对比 | Redis | Memcache |
---|---|---|
性能 | 1. 比较高,性能对我们来说应该都不是瓶颈。 2. 总体来讲,TPS 方面 Redis 和 Memcache 差不多。 |
比较高。 |
数据结构 | Redis 比 Memcache 数据结构丰富。 | Memcache 数据结构单一。 |
内存空间 | Redis 在 2.0 版本后增加了自己的 VM 特性,突破物理内存的限制,可以对key value 设置过期时间(类似 Memcache)。 | Memcache 可以修改最大可用内存,采用 LRU 算法。 |
可靠性(持久化) | 对于数据持久化和数据恢复,Redis 支持(快照、AOF),但依赖快照进行持久化的同时,对性能也产生了一定的影响。 | Memcache 不支持,通常用在做缓存,提升性能。 |
数据一致性(事务支持) | Redis 事务支持比较弱,只能保证事务中的每个操作连续执行。 | Memcache 在并发场景下,用 cas 保证一致性。 |
有如下使用要求的,选择 Redis
有如下使用要求的,选择 Memcache
纯 kv,数据量非常大,并发量非常大的业务,使用 Memcache 更合适。
对小型静态数据进行缓存处理,最具代表性的例子就是 HTML 代码片段。
Memcache 的内部内存管理机制虽然不像 Redis 的那样复杂,但却更具实际效率。