相同点

  • Redis和Memcached都是内存数据存储系统,都用作内存中的键值数据存储。
  • 因为都是基于内存,所以性能都比较高。
  • 都拥有过期策略

    不同点

    | | reids | Memcached | | :—-: | :—-: | :—-: | | 数据类型 | 支持的数据类型更丰富(支持更复杂的应用场景)比如: list,set,zset,hash | 只支持最简单的 k/v 数据类型 | | 持久化 | 支持数据持久化,将内存中数据写入磁盘,重启的时候可以将数据重新加载使用 | 不支持持久化,数据放在内存中 | | 灾难恢复机制 | 有(因为数据存在了磁盘中) | 无 | | 内存使用完,处理方式不同 | 将不用的数据存入磁盘 | 直接报异常 | | 原生的集群模式 | 有 | 无 | | | 单线程的多路 IO 复用模型 | 多线程,非阻塞 IO 复用的网络模型 | | | 支持发布订阅模型、Lua脚本、事务等功能并且,Redis支持更多的编程语言 | |