Redis 和Memcache 的区别

Redis本质上是一个Key-Value类型的内存数据库,很像memcached,整个数据库统统加载在内存当中进行操作,定期通过异步操作把数据库数据flush到硬盘上进行保存。

Memcache:代码层次,类似 Hash

  1. 支持简单数据类型;
  2. 不支持数据持久化存储;
  3. 不支持主从;
  4. 不支持分片;
  5. Memcached是多线程,非阻塞 IO 复用的网络模型;

Redis:

  1. Redis 使用单线程的多路 IO 复用的网络模型;
  2. 速度快:10w QPS,数据存在内存,C 语言编写,线程模型为单线程;
  3. 持久化:对数据的更新将异步保存到磁盘上;
  4. 多种数据结构:String / Blobs / Bitmaps 位图、HashTables、LinkedLists、Sets、SortedSets、HyperLogLog 超小内存唯一值计数、GEO 地理信息定位;
  5. 支持多种编辑语言:Java、Php、Python、Ruby、Lua、Node 等;
  6. 功能丰富:发布订阅、Lua 脚本、事务、pipeline;
  7. 简单:2w3行代码量、不依赖外部库、单线程模型;
  8. Redis Replication 支持主从复制;
  9. Redis Sentinel(2.8)支持高可用,Redis Cluster(3.0)支持分布式;
发布了124 篇原创文章 · 获赞 76 · 访问量 5651

猜你喜欢

转载自blog.csdn.net/weixin_45151795/article/details/105354227