对比项
|
Redis
|
Memcache
|
类型
|
1.支持内存
2.非关系型数据库
|
1.支持内存
2.k-v键值对形式
3.缓存系统
|
数据存储类型
|
String
List
Set
Hash
ZSet
|
文件
二进制
|
k-v限制
|
key最大512M,value最大512M
|
key最大250字符,value最大1M
|
附加功能
|
1.发布/订阅
2.主从复制
3.lua脚本支持
|
无
|
扩展性
|
原生支持集群,有第三方代理支持,主从同步,一主一从,一主多从
|
通过magent代理事项
|
高可用
|
原生支持故障转移
|
通过magent+keepalive实现
|
性能
|
1.纯k-v value在100k以下性能好
|
value在100k以上性能好
|
数据持久性
|
1.支持持久化以及数据恢复,持久化
RDB快照和AOF日志持久化策略
|
1.不支持持久化
|
网络IO模型
|
单线程epoll事件驱动
|
线程池非阻塞IO-pipe
|
内存管理机制
|
基于Redis优化过的
malloc/free,可以使用虚拟内存
|
预分配的、各种固定大小的 trunk
|
并发数据一致性
|
单线程事务支持
|
基于cas
|
使用场景
|
session会话,消息队列,发布/订阅,排行榜/计数器,全页缓存
|
会员,海量小数据
|
参考网上多份材料