1241.redis 和 memcached 什么区别?为什么高并发下有时单线程的 redis 比多线程的 memcached 效率要高?

区别:

  1. mc 可缓存图片和视频。rd 支持除 k/v 更多的数据结构;
  2. rd 可以使用虚拟内存,rd 可持久化和 aof 灾难恢复,rd 通过主从支持数据备份;
  3. rd 可以做消息队列。

原因:

mc 多线程模型引入了缓存一致性和锁,加锁带来了性能损耗。