Redis和Memcache的区别

  redis和memcache的不同点:

1、存储方式

redis和memcache都是将数据存放在内存中,都是内存数据库。

memcache把数据全部存在内存之中,数据不能超过内存大小,断电后会挂掉,挂掉后数据不可恢复。

redis可以定期保存到磁盘(持久化),这样能保证数据的持久性。reids若数据丢失可以通过aof恢复。redis当物理内存用完时,可以将一些很久没用到的value交换到磁盘。

2、数据支持类型

redis在数据支持上要比memcache多的多。

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

3、使用底层模型不同

新版本的redis直接自己构建了VM机制,因为一般的系统调用系统函数的话,会浪费一定的时间去移动和请求。

4、运行环境不同

redis目前官方只支持LINUX上运行,从而省去了对于其他系统的支持,这样的话可以更好地把精力用于本系统环境的优化。

 

总结:

1、redis使用最佳方式是全部数据in-memory。

2、redis更多场景是作为Memcache的替代者来使用。

3、当需要除key/value之外的更多数据类型支持时,使用redis更合适。

4、当存储的数据不能被剔除时,使用redis更合适。

 

posted @ 2017-12-26 22:19  hustzzl  阅读(329)  评论(0编辑  收藏  举报