Memcached与Redis 区别

最直观的一些区别

  1. Redis 不仅支持简单的K/V类型数据,还支持 list , set, zset, hash等数据结构。
  2. Redis支持数据的备份,即master-slave模式的数据备份。
  3. Redis支持数据的持久化,可以将内在中的数据保持在磁盘中,重启的时候可以再次加载使用。

更深入的区别

  1. 在Redis中,不是所有数据都一直存储在内在中的,这是与Memcached相比最大的区别。

Redis只会缓存所有的key信息,如果Redis发现内在的使用量超过了某一个阀值,将触发swap操作,Redis会计算出哪些key对应的value需要swap到磁盘,然后再将这些value持久化到磁盘中,同时在内在中清除。

  1. Memcached 是多线程,非阻塞IO复用的网络模型,分为监听主线程和worker子线程。Redis 使用单线程的IO复用模型。

总结

  1. Redis使用的最佳方式是全部数据in-memory.
  2. Redis更多场景是作为Memcached的替代者来使用。
  3. 当需要除k/v之外的更多数据类型支持时,使用Redis更合适。
  4. 当存储的数据不 能被剔除时,使用Redis更合适。
    原文作者:玩裤
    原文地址: https://www.jianshu.com/p/69e2793fdafe
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞