缓存服务器,Memcached 1.4.16 发布

jopen 10年前

memcached是什么?

memcached是由Danga Interactive开发的,高性能的,分布式的内存对象缓存系统,用于在动态应用中减少数据库负载,提升访问速度。

memcached能缓存什么?

通过在内存里维护一个统一的巨大的hash表,Memcached能够用来存储各种格式的数据,包括图像、视频、文件以及数据库检索的结果等。

memcached快么?

非常快。memcached使用了libevent(如果可以的话,在linux下使用epoll)来均衡任何数量的打开链接,使用非阻塞的网络 I/O,对内部对象实现引用计数(因此,针对多样的客户端,对象可以处在多样的状态), 使用自己的页块分配器和哈希表, 因此虚拟内存不会产生碎片并且虚拟内存分配的时间复杂度可以保证为O(1).。

Danga Interactive为提升Danga Interactive的速度研发了memcached。目前,LiveJournal.com每天已经在向一百万用户提供多达两千万次的页面访问。而这 些,是由一个由web服务器和数据库服务器组成的集群完成的。memcached几乎完全放弃了任何数据都从数据库读取的方式,同时,它还缩短了用户查看 页面的速度、更好的资源分配方式,以及memcache失效时对数据库的访问速度。

memcached的特点

memcached的缓存是一种分布式的,可以让不同主机上的多个用户同时访问, 因此解决了共享内存只能单机应用的局限,更不会出现使用数据库做类似事情的时候,磁盘开销和阻塞的发生。

修复的bugs:

  • Builds on OS X Mavericks (with clang)
  • Add statistics for allocation failures
  •  Issue 294 : Check for allocation failure
  • Make tail leak expiry time configurable (-o tail_repair_time=60)
  • Fix segfault on specially crafted packet.
  • Close connection on update_event error while parsing new commands
  • Don't truncate maxbytes stat from 'stats settings'
  • Add the "shutdown" command to the server. This allows for better automation
  • fix enable-sasl-pwdb

新特性:

Adjusting tail repair time: -o tail_repair_time=60 (in seconds)

"tail repairs" are a failsafe within memcached where if a cache item is leaked via an unfixed or obscure bug, the item will be recycled anyway if it ends up at the bottom of the LRU and hasn't been touched in a long period of time. Most releases do not have these bugs, but some have so we've left the mechanism in place. The default time before reaping is 3 hours. For a busy site that sucks. we've lowered the default to one hour, which is much longer than any object should ever take to download.

If you need dead items to be pulled more quickly, use this override. Make sure you don't set it too low if you have clients which download items very slowly (unlikely, but eh).

最新下载:http://www.memcached.org/files/memcached-1.4.16.tar.gz