MemCache与Redis如何选择?
MemCache与Redis主要的差异表现在以下方面:
1、Redis和MemCache都是将数据存放在内存中,都是内存数据库。他们都支持key-value数据类型。同时MemCache还可用于缓存其他东西,例如图片、视频等等,Redis还支持list、set、hash等数据结构的存储。
2、Redis支持数据的持久化,可以将内存中的数据保持在磁盘中,重启的时候可以再次加载进行使用。MemCache挂掉之后,数据就没了。
3、灾难恢复-MemCache挂掉后,数据不可恢复; Redis数据丢失后可以恢复。
4、在Redis中,并不是所有的数据都一直存储在内存中的。这是和MemCache相比一个最大的区别。当物理内存用完时,Redis可以将一些很久没用到的value交换到磁盘。
5、Redis在很多方面支持数据库的特性,可以这样说他就是一个数据库系统,而MemCache只是简单地K/V缓存。
所以在选择方面如果有持久方面的需求或对数据类型和处理有要求的应该选择Redis。
如果简单的key/value存储应该选择MemCache。