redis和memcacahe、mongoDB的区别

都是非关系型数据库,性能都非常高,但是 mongoDB 和 memcache、redis 是不同的
两种类型。后两者主要用于数据的缓存,前者主要用在查询和储存大数据方面,是最接
近数据库的文档型的非关系数据库。
 这里我主要谈谈 memcache 和 redis 的区别。
①从数据存储位置上来分,memcache 的数据存在内存中,而 redis 既可以存储在内存中,
也可以存储的到磁盘中,达到持久化存储的功能,memcache 一旦断电,数据全部丢失,
redis 可以利用快照和 AOF 把数据存到磁盘中,当恢复时又从磁盘中读取到内存中,当
物理内存使用完毕后,可以把数据写入到磁盘中。
 ②从存储数据的类型上来分,memcache 和 redis 存储的方式都是键值对,只不过 redis
值的类型比较丰富,有 string(字符串),hash(哈希),list(列表),set(集合)zset(有序
集合),而 memcache 主要存储的是字符串。
 ③从架构层次来分,Redis 支持 master-slave(主—从)模式应用,memcache 支持分布
式。
 ④另外从存储数据的大小上来分,Redis 单个 value 的最大限制是 1GB,memcached 只
能保存 1MB 的数据。但是 Memcache 在存储 100K 以上的数据,性能稍微好一点。
  ⑤另外 redis 只支持单核,memcache 可以支持多核,当然关于 redis 取代 memcache
的说法,在一般情况下,两者性能都很高,在大多的业务场景选择上,redis 的选择可
能更加具有优势,但也不能说可以完全取代,最终还是取决于你的应用场景。

posted @ 2018-08-13 15:53  阿拉神苗  阅读(880)  评论(0编辑  收藏  举报