Memcached和Redis的几点区别

NoSQL因其优势,目前是大行其道,而Memcached和Redis更是NoSQL中的明星。二者同为Key-Value型,且同样优秀,少不了一番比较。以下是一些简单的比较,不涉及底层基础等。


  1.存储最大值
  Memcached的key最大为250字节,value最大为1MB;Redis的key和value最大都是512MB。
  2.数据类型
  Memcached存储的类型仅支持key-value类型;Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合)。
  3.数据备份
  Memcached不支持数据备份;Redis支持master-slave模式的数据备份,可搜:Redis数据备份与恢复。

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

可持久化(一边运行,一边把数据往硬盘中备份一份,防止断电等情况导致数据丢失,等断电情况恢复之后,Redis再把硬盘中的数据恢复到内存中),保证了数据的安全。
  4.灾难恢复
  Memcached不可恢复,即restart之后数据也会清空;Redis可以恢复。
  5.性能比较
  放上引用的一段话,链接地址会在下文给出:
由于Redis只使用单核,而Memcached可以使用多核,所以在比较上,平均每一个核上 Redis在存储小数据时Memcached性能更高。而在100k以上的数据中,Memcached性能要高于Redis,虽然Redis最近也在存储 大数据的性能上进行优化,但是比起Memcached,还是稍有逊色。说了这么多,结论是,无论你使用哪一个,每秒处理请求的次数都不会成为瓶颈。
  6.持久化
  这一点可以说是二者之间本质上的区别,同时也是上一点灾难恢复的基础。Memcached不可以持久化,所有的数据都在内存中。Redis有两种持久化的方式:RDB(快照)方式和AOF(追加)方式,可搜:Redi持久化。
  7.使用场景
  私以为,Memcached足以应对一般网站的缓存需求,此博客既是使用Memcached。如果有更多的需求,如持久化、可靠性或者更多数据类型,应当考虑Redis。
  以上,是二者之间的一些区别。网上关于这个话题讨论已久,同时也是面试的经典题,相关文章不胜枚举,希望各位在此篇中取其精华,善加利用。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值