当前位置:首页 > 数码 > 上古程序猿推戴经常使用Redis的执著理由 (上古教程)

上古程序猿推戴经常使用Redis的执著理由 (上古教程)

admin7个月前 (04-15)数码35

最近,在知乎上看到这样一个疑问:

有些上古程序猿不时保持推戴经常使用怎样办?

终究用不用Redis?为什么用?怎样用?让咱们看看网友怎样说……

@灵剑

你不要通知咱们用不用redis, 你得通知咱们你为什么想要用redis,不用redis业务会有什么疑问?

天下没有收费的午餐,不动脑子间接上缓存/NOSQL或许会带来更多更重大的疑问。

繁多数据库最大的好处在于事务性成功便捷,由数据库自己保障。举个便捷的例子,下订单须要扣除一个库存,而后拔出一条订单条目,假设库存和订单都是数据库表项的话这个事务是无懈可击的。

上古教程

假设库存在redis里,订单条目是,通常就须要先写redis,成功之后再写数据库,假设写数据库失败了还须要回滚redis,假设最后这个回滚由于网络之类的要素失败了,就会多扣一个库存。

不要以为这些事件很好处置,事务性处置的复杂性远远超越你的构想,比如说还有写MySQL在提交的一瞬间衔接断了这种状况,你都没法判别提交究竟成功了还是失败了,那你的redis是回滚还是不回滚?

所以引入新的层必定要说清楚,你为了什么目标必定要用缓存/NOSQL,能接受什么样的分歧性模型,否则就是在胡闹。

审慎经常使用缓存是对的。

由于很多时刻缓存会覆盖掉一些疑问,甚至加大疑问。

从安保角度来说,缓存也是最容易被攻打的单薄点(缓存溢出攻打,不是缓存区溢出攻打,用少量有效的数据占满缓存空间使得系统性能断崖式上涨)。

所以通常做压力测试的时刻都是要求必定封锁缓存测试。

不单单是缓存,一切的两边件在处置一局部疑问的同时也会带来新的应战。譬如信息队列关于削峰填谷的效用十分显著,然而假设峰值继续的期间远远的超出了预计呢?而假设这时刻信息阻塞的监控还在方案中的话……

比如说散布式计算带来了有限扩容的或许,而分歧性疑问很多时刻会带来十分多的费事。

掂量是永远不会过期的。

我大概从95年开局学习编程,我想我应该算是一个上古程序员。

首先说一下你的疑问,这个疑问中的上古显著是带着点歧视的(当然你可以把它解释为调侃)。这个疑问其实并不是个技术疑问,问的其实并不是能否该用Redis,而是曾经十分自信的以为应该用,只是该怎样处置掉上古程序员保持不用这个疑问。

由于做的不是这一块,所以我团体并不了解Redis,然而可以说一上方对技术方向的分歧,我有什么处置方法: 用或许不用 某个系统/言语/技术/模块/组件/架构,或许用A还是用B,无非牵扯到几个方面的影响: 上班量、可裁减性、稳固性、性能、安保性、保养难度/可读性、费用 等等。而在不同的选用中通常都不太或许做到选用A在一切方面都强过选用B的,这时刻要做的,其实是一个对 各个方面的评价 ,乘以 这个名目对哪些方面更看重的权重 ,而后得出论断。

假设你能拿出你要用Redis的证据,也就是在哪些方面比不用Redis强,强了多少,有必要的话需写一些测试的程序来验证你的论断。而后用这些量化的数据去压服对方,这才是一个谨严的程序员应该做的,而不是跑到知乎过去讥嘲一个跟你 雷同想把事件做好,而只是理念不同 的共事。

最后说一下,多年的上班中,我发现有些程序员(很多)选用某个技术的要素,并不是基于上方所说的这些方面,而是:

而这几个,其实都不是真正的理由(第一个还好点,由于会所以上班量更少)。不知道答主是不是也有这种状况,倡导有则改之,无则加勉。

大家关于 "该不该经常使用Redis?" 这一疑问,有怎样的思索和想法呢?欢迎在留言区交换~


Redis是什么缓存机制

redis(RemoteDictionaryServer)远程数据服务内存高速缓存数据库。 C语言zd编写,数据模型为key-value,NoSql数据库。 希望对你有所启发。 apeit-程序猿IT中redis章节讲的不错,由浅入深,适合入门学习。

REDIS学习查看redis状态,以及rdb和aof两种持久化方案的区别

命令:redis-cli info //查看redis服务器状态的rdb : redis database 默认开启的,是将数据从内存备份到硬盘中。 aof:append only f 需要自己根据需要开启,是将执行命令存储在一个文件中。 建议看一下apeit-程序猿IT的文章《redis数据持久化》,讲的简单明了。

免责声明:本文转载或采集自网络,版权归原作者所有。本网站刊发此文旨在传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及版权、内容等问题,请联系本网,我们将在第一时间删除。同时,本网站不对所刊发内容的准确性、真实性、完整性、及时性、原创性等进行保证,请读者仅作参考,并请自行核实相关内容。对于因使用或依赖本文内容所产生的任何直接或间接损失,本网站不承担任何责任。

标签: Redis

“上古程序猿推戴经常使用Redis的执著理由 (上古教程)” 的相关文章

Redis数据删除后-内存占用为何居高不下 (redis数据类型)

Redis数据删除后-内存占用为何居高不下 (redis数据类型)

作为面试经验丰富的开发人员,肯定会遇到过这样的问题:做了数据删除操作,为什么使用 top 命令时,仍然显示 Redis 占用了大量内存? 答案 这是因为当数据删除后,Re...

一站式-满足您的所有-解决方案-需求-Redis-Redis (一站式满足您的资金需求让您用款无忧)

一站式-满足您的所有-解决方案-需求-Redis-Redis (一站式满足您的资金需求让您用款无忧)

Introduction Redis is an efficient in-memory database designed to store data invarious formats, s...

安装并配置-Kubernetes-集群 (安装并配置mysql的实验总结)

安装并配置-Kubernetes-集群 (安装并配置mysql的实验总结)

日常开发中,基于自然支持散布式锁,大家在线上散布式名目中都经常使用过Redis锁。本文重要针对日常开发中加锁环节中某些意外场景启动解说与剖析。本文解说示例代码都在名目目录下 RedisLo...

探索强大的工具优化集群性能和可靠性-Redis运维神器 (探索强大的工作有哪些)

探索强大的工具优化集群性能和可靠性-Redis运维神器 (探索强大的工作有哪些)

监控工具 INFO 命令 INFO 命令是 Redis 提供的监控命令,可以返回丰富的实例运行监控信息。INFO 命令的参数为 section,取值如下:...

Redis-使用哈希槽而非一致性哈希的原因 (redis淘汰策略有哪些)

Redis-使用哈希槽而非一致性哈希的原因 (redis淘汰策略有哪些)

引言 在分布式系统中,数据分片和负载均衡是至关重要的。哈希槽和一致性哈希两种方法都可以实现这些目标,但它们各有优缺点。本文将讨论为什么在某些情况下使用哈希槽而不是一致性哈希。 哈希槽 哈希...

引发业界震荡-Redis叛逃开源-得罪了 (引发业界震荡的因素)

引发业界震荡-Redis叛逃开源-得罪了 (引发业界震荡的因素)

Redis 许可变更:开源界的巨石 导言 近来,内存数据库供应商 Redis 宣布了一项重大变更,该变更将在开源界掀起轩然大波。Redis 将转向双许可模式,并采用更严格的许可条款。此举引起了社区...

成功多规则限流的思索与通常-Redis (成功的规则)

成功多规则限流的思索与通常-Redis (成功的规则)

市面上很多引见如何成功限流的,然而大局部都有一个缺陷,就是只能成功繁多的限流,比如1分钟访问1次或许60分钟访问10次这种,然而假构想一个接口两种规则都须要满足呢,咱们的名目又是散布式名目,应该如何处...