Redis 与 Memcached 的差异与选择

结论先行

Redis 提供丰富数据结构、持久化、复制、集群和 Lua,适合缓存之外的会话、排行榜、队列和 pub/sub;Memcached 是简单的多线程 KV 缓存,适合纯缓存和横向扩展。只需要简单缓存时可以选 Memcached,否则通常 Redis 更通用。

核心差异

维度 Redis Memcached
数据结构 string/hash/list/set/zset/stream 等 仅 key-value
持久化 RDB/AOF 不支持
复制/集群 主从、Sentinel、Cluster 客户端分片
线程模型 命令执行单线程(新版本有 I/O 线程) 多线程
过期/淘汰 TTL + 多种淘汰策略 TTL + LRU
事务/Lua 支持 不支持
典型场景 缓存、会话、排行榜、队列 纯缓存、页面/对象缓存

怎么选

注意

redis-cli INFO memory
redis-cli --bigkeys
echo stats | nc memcached 11211

相关命令