Redis与Memcache区别

作为一个需要时刻学习的DBA,我尝试从自己的角度分析,memcached和Redis区别
第一、性能比较
1.CPU使用

memcached是多线程的,可以提高多核CPU的使用能力;

redis是单进程的,使用串行方式处理数据。

2.内存使用
memcached有单个文件1M内存限制;
Redis则没有相应限制
总结:综合比较吧,2者性能差不多;

第二、功能比较
1.支持的数据类型

memcache数据结构单一(字符串)

redis支持类型相对较多(字符串,列表,有序集合,哈希表,集合)

2.数据是否能持久化
memcached只支持数据存放在内存中,Redis则可以灵活调整(快照、AOF)
3.数据一致性(事务支持)
Memcache在并发场景下,用case保证一致性
redis事务支持比较弱,只能保证事务中的每个操作连续执行


第三、运维和学习成本:
1.复杂度
memcached复杂度较低,容易学习和管理,redis相应操作较复杂!
2.集群部署(解决单点故障)
Memcache本身没有数据冗余机制

--未完待续


第四、如何选择?
redis:数据量较小的更性能操作和运算上
memcache:用于在动态系统中减少数据库负载,提升性能;做缓存,提高性能(适合读多写少,对于数据量比较大,可以采用sharding)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值