2012-09-19 47 views
0

是否有可能以某种方式将内存过度分配给Memcache,从而对get/set性能产生负面影响?我读过的大多数Memcache操作都是O(1),所以我会认为答案是否定的,但我不是Memcache的专家。Memcache内存过度分配

例如,目前已分配4GB的空间,其中12.5%浪费空间,每秒钟发生8次驱逐。多个网站使用这个专用的Memcache服务器。那么,会不会增加一倍,三倍......记忆会伤害整个系统?

回答

1

通常不可能将内存分配给memcached。这里的一个例外是如果分配的内存比实际可用的多,并且会导致某些memcached地址空间被换出到磁盘。如果您有大量应用程序在运行大量内存的计算机上运行,​​则可能会发生这种情况。

+0

在光油中,在分配的内存之外有一个1k的对象开销。你知道Memcache中有类似的东西吗?即它是否使用不计入总分配内存的内部数据结构? – Spechal

+0

每个项目都有少量的与之关联的元数据,它只保存到期时间(8字节)。据我所知,每个密钥都没有其他内容。 – mikewied