关注微信公众号 太平洋学习网 扫描二维码
最新消息:关注【太平洋学习网】微信公众号,可以获取全套资料,【全套Java基础27天】【JavaEE就业视频4个月】【Android就业视频4个月】

Redis vs Memcached|Redis与Memcached的区别好处分析

数据库 太平洋学习网 浏览 评论

Redis vs Memcached,Memcached和Redis都是成熟和非常受欢迎的Nosql数据库开源项目,想要了解Redis与Memcached哪一个更好用,就必须要了解一下Redis与Memcached的区别与好处都有哪些?

1:论Redis与Memcached的年代历史

Memcached最初由Brad Fitzpatrick于2003年为LiveJournal网站开发。从那以后,Memcached被重写为C(原来的实现是Perl)并放入公有领域,它已经成为现代Web应用程序的基石。目前Memcached的开发重点在于稳定性和优化,而不是增加新功能。

Redis由Salvatore Sanfilippo于2009年创建,Sanfilippo仍然是该项目的首席开发人员。Redis有时被描述为“Memcached on steroids”,考虑到Redis的部分内容是为了响应使用Memcached而获得的经验而建立的,这并不令人惊讶。Redis具有比Memcached更多的功能,因此功能更强大,更灵活。

2:Redis与Memcached的读写速度分析

由于Redis只使用单线程,而Memcached可以使用多线程,所以平均每一个核上Redis在存储小数据时比Memcached性能更高。而在100k以上的数据中,Memcached性能要高于Redis,虽然Redis最近也在存储大数据的性能上进行优化,但是比起Memcached,还是稍有逊色。

4:Redis与Memcached的安全性分析

虽然Memcached是多线程的,可以利用更多的计算机资源来轻松的扩展,但是redis也可以通过集群来扩展,补充了这个缺点,虽然维护麻烦点,但是更加安全,redis可以将数据持久化到本地磁盘中,而Memcached则不可以,一旦Memcached挂掉了,内存中的数据就会丢失。

5:Redis与Memcached数据存储的多样性分析

redis可以存储普通字符串,列表,集合,hash表,链表等结构的数据,并能轻松对数据进行排序等操作,而Memcached则只能存储普通字符串类型,并且不能进行这种操作。

6:Redis与Memcached的数据淘汰机制

Redis可以自动删除掉最近不常用的数据,以减少计算机内存的开销,包括这种机制之外,还有以下几种机制:

noeviction:默认策略,不淘汰,如果内存已满,添加数据是报错。 

allkeys-lru:在所有键中,选取最近最少使用的数据抛弃。 

volatile-lru:在设置了过期时间的所有键中,选取最近最少使用的数据抛弃。 

allkeys-random: 在所有键中,随机抛弃。 

volatile-random: 在设置了过期时间的所有键,随机抛弃。 

volatile-ttl:在设置了过期时间的所有键,抛弃存活时间最短的数据。

而Memcached只有一种机制,就是删除掉最近不常用的数据。


来源网站:太平洋学习网,转载请注明出处:http://www.tpyyes.com/a/mysql_oracle/2018/0409/529.html

    与本文相关的文章