您好,欢迎访问一九零五行业门户网

memcached与redis哪个好

说起缓存框架,我们最常用的缓存框架有 memcached、redis 这两个,但它们之间其实是有差异的。
memcached 的诞生
2003年5月,brad fitzpatrick 发布了第一个版本的 memcached,一开始主要是为了解决 livejournal 网站访问缓存问题而诞生的,这个版本的 memcached 使用 perl 语言编写。            (推荐学习:redis视频教程)
之后 anatoly vorobey 使用 c 重写了 memcached。现在 memcached 已经被广泛应用于 youtube、reddit、facebook 等网站。
说起 memcached 的诞生,主要还是因为关系型数据库在存储性能上的瓶颈。因为进入21世纪,随着个人电脑的普及,世界网民数量急剧攀升,网站的访问量也随之攀升。
因为关系型数据库需要将数据持久化,所以会有一些写硬盘io的过程,因此在写入数据上会有瓶颈。而为了解决硬盘io速度慢的问题,memcached 则是将所有数据存储在了内存中,从而能实现快速的数据写入和读取。
也是因为 memcached 将数据存储在内存中,没有实现持久化,所以当出现一些意外情况,例如:断电重启、机器宕机等情况,memcached 存储的数据会全部丢失,我们只能重新从数据库中读取一次,再加载到 memcached 中。
除此之外,memcached只支持单一的 key-value 存储,所以这里面存储的数据类型单一,无法适应多样化的业务发展。
redis 的诞生
正是因为以上问题的存储,所以在2009年5月的时候redis诞生了。redis创建者看到了memcached身上存在的许多问题,所以创建了redis缓存框架。
在redis缓存框架中,它支持多达 6 种类型的数据存储,并且提供了多个原子命令操作。并且redis还支持了将数据持久化到本地文件,这样当发生意外时就不需要再从数据库读取一遍数据了,直接读取本地文件恢复即可。
到底哪一个好?
从两个缓存框架的发展历程来看,我们可以知道redis是memcached的升级版本,memcached具有的功能redis基本上都具备了。
所以很多时候我们都是使用redis作为首选的缓存框架,当然了memcached也有一些比redis好一些的性能,比如在存储完全静态的小量 key-value 数据时,memcached会比redis快一些。
但只要数据量稍微大一点,或者数据是动态的,那么memcached的性能就会直线下降。
所以即使memcached在某些方面有细微的优势,但总体上redis还是优于redis这个缓存框架的。
更多redis相关技术文章,请访问redis入门教程栏目进行学习!
以上就是memcached与redis哪个好的详细内容。
其它类似信息

推荐信息