美文网首页程序员
Redis与Memcach的区别

Redis与Memcach的区别

作者: 天下vs栋哥 | 来源:发表于2018-07-03 20:27 被阅读30次

1. Redis不仅仅支持简单的k/v类型的数据,同时还提供list,set,hash等数据结构的存储。不过memcache还可用于缓存其他东西,例如图片、视频等等;

2. Redis支持数据的备份,即master-slave模式的数据备份。(主从双备)

3. Redis支持数据的持久化,可以将内存中的数据保持在磁盘中,重启的时候可以再次加载进行使用。

4. Redis 只会缓存所有的key的信息,如果Redis发现内存的使用量超过了某一个阀值,将触发swap的操作,Redis根据“swappability = age*log(size_in_memory)”计算出哪些key对应的value需要swap到磁盘。然后再将这些key对应的value持久化到磁 盘中,同时在内存中清除。这种特性使得Redis可以保持超过其机器本身内存大小的数据。当然,机器本身的内存必须要能够保持所有的key,毕竟这些数据 是不会进行swap操作的。

5. 性能

都比较高,性能对我们来说应该都不是瓶颈

总体来讲,TPS方面redis和memcache差不多,要大于mongodb

6. 操作的便利性

memcache数据结构单一

redis丰富一些,数据操作方面,redis更好一些,较少的网络IO次数

mongodb支持丰富的数据表达,索引,最类似关系型数据库,支持的查询语言非常丰富。

7. 持久化

对于数据持久化和数据恢复,

redis支持(快照、AOF):依赖快照进行持久化,aof增强了可靠性的同时,对性能有所影响

memcache不支持,通常用在做缓存,提升性能;

MongoDB从1.8版本开始采用binlog方式支持持久化的可靠性

8. 应用场景

redis:数据量较小的更性能操作和运算上,做缓存

memcache:用于在动态系统中减少数据库负载,提升性能;做缓存,提高性能(适合读多写少,对于数据量比较大,可以采用sharding)

MongoDB:主要解决海量数据的访问效率问题   

相关文章

  • Redis与Memcach的区别

    1. Redis不仅仅支持简单的k/v类型的数据,同时还提供list,set,hash等数据结构的存储。不过mem...

  • 总结一

    1.redis与MQ的区别:Redis是一个高性能的key-value数据库,它的出现很大程度补偿了memcach...

  • redis和Memcached的区别

    区别: 1.Redis相比Memcached来说,拥有更多的数据结构和并支持更丰富的数据操作,通常在Memcach...

  • 3、Redis 基础

    Redis的五大数据类型 String(字符串)string是redis最基本的类型,你可以理解成与Memcach...

  • redis_安装

    一、什么是 Redis REmoteDIctionaryServer,简称 Redis,是一个类似于Memcach...

  • Redis&Memcached

    什么是Redis? Redis 是一个使用 C 语言写成的,开源的 key-value 数据库。。和Memcach...

  • Redis的基础

    什么是Redis? Redis 是一个使用 C 语言写成的,开源的 key-value 数据库。。和Memcach...

  • redis面试总结

    什么是Redis? Redis 是一个使用 C 语言写成的,开源的 key-value 数据库。。和Memcach...

  • Redis与memcached的对比

    性能对比: redis使用单核,而memcached可以使用多核,所有每个核上redis存小数据要比memcach...

  • springboot ehcache、redis、memcach

    之前有写过springboot+redis实战,这里不做redis缓存测试了 下方有springboot+ehca...

网友评论

    本文标题:Redis与Memcach的区别

    本文链接:https://www.haomeiwen.com/subject/psgjuftx.html