欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

memcache和redis缓存对比及我为什么选择redis

程序员文章站 2022-11-06 23:27:23
对比结论 1. 性能上: 性能上都很出色,具体到细节,由于Redis只使用单核,而Memcached可以使用多核,所以平均每一个核上Redis在存储小数据时比Memcached性能更高。而在100k以上的数据中,Memcached性能要高于Redis,虽然Redis最近也在存储大数据的性能上进行优化 ......

对比结论

1. 性能上:

性能上都很出色,具体到细节,由于redis只使用单核,而memcached可以使用多核,所以平均每一个核上redis在存储小数据时比memcached性能更高。而在100k以上的数据中,memcached性能要高于redis,虽然redis最近也在存储大数据的性能上进行优化,但是比起 memcached,还是稍有逊色。

2. 内存空间和数据量大小:

memcached可以修改最大内存,采用lru算法。redis增加了vm的特性,突破了物理内存的限制。
memcached单个key-value大小有限,一个value最大只支持1mb,而redis最大支持512mb。

3. 操作便利上:

memcached数据结构单一,仅用来缓存数据,而redis支持更加丰富的数据类型,也可以在服务器端直接对数据进行丰富的操作,这样可以减少网络io次数和数据体积。

4. 可靠性上:

memcached不支持数据持久化,断电或重启后数据消失,但其稳定性是有保证的。redis支持数据持久化和数据恢复,允许单点故障,但是同时也会付出性能的代价。

5. 存储数据类别上的区别:

redis支持很存储表:key-value、hash表、list表等
memcache只支持key-value,不过memcache可以在内存中缓存图片、视频等。

6. 应用场景:

memcached:动态系统中减轻数据库负载,提升性能;做缓存,适合多读少写,大数据量的情况。
redis:适用于对读写效率要求都很高,数据处理业务复杂和对安全性要求较高的系统。

我为什么选择redis

其实redis也支持cas,而且最新的redis支持分布式集群,即使100k以上的流量性能不及memcache高,但是我自己的网站没有那么高的并发量啊,o(∩_∩)o哈哈~
上个博客测试我sso登录的并发量2000反应3s,所以达不到那么高的并发,其次个人的服务器也存在不稳定情况,docker没有配置k8s管理,容易出现进程失效问题,所以redis还能很好的保护我的数据,故,我选择redis,欢迎大神指教!!!也希望能结交大神,能带着我学习。。。