Memcached中意外的(?)高“浪费”内存
已更新,请参阅冗长(抱歉)问题的底部。 查看我们的内存缓存统计信息,我认为我发现了一个以前未曾意识到的问题。看来我们有一个奇怪的大量浪费空间。我检查了phpmemcacheadmin的更改,发现该图像盯着我: 现在我给人的印象是,最糟糕的情况是浪费了50%,尽管我是第一个承认不知道所有细节的人。我已经阅读(除其他外)此页面确实有些旧,但是我们的memcached版本也是如此。我想我确实了解系统的工作原理(例如),但是我很难理解如何才能达到76%的浪费空间。 phpmemcacheadmin显示的逐出率为2 ev/s,因此这里存在一些问题。 主要问题是:我该怎么做才能解决此问题。我可以为此增加更多的内存(我认为还有一些额外的可用空间),也许我应该摆弄平板配置(这个版本甚至可以吗?),也许还有其他选择吗?升级内存缓存版本不是一个快速可用的选项。 第二个问题是出于好奇,当然是,是否期望75%(并且还在不断增加)的浪费空间的比率是预期的,如果是这样,为什么。 系统:目前,这是我无能为力的事情,我知道内存缓存版本不是最新的,但是这些都是我所处理的。 内存缓存1.4.5 阿帕奇2.2.17 PHP 5.3.5 作为对@DavidSchwartz答案的回应:这是phpmemcacheadmin生成的平板统计信息:(比这些更多的平板) (我稍后还会以文本格式粘贴统计信息) 更新 我用-f 1.5重新启动了守护程序,它看起来真的很好。经过一番变暖,我们浪费了50/50。但是,与以前一样,我们一天的时间越长(一天中变得越来越忙),它开始回落到当前的水平:30/70,而浪费仍然在增加。除此之外,我仍然不知道“浪费”的来源。我看到这个平板: **Slab 5 Stats** Chunk Size 496.0 Bytes Used Chunk 77502 [24.6 %] Total Chunk 314986 Total Page 149 Wasted 117.3 MBytes Hits 30.9 Request/sec Evicted 0 它不完整,没有被逐出,但是浪费了117.3 MB。我所做的快速计算(如果我错了,请纠正我)是: 前一个平板的块大小为328,因此最坏的情况是此平板上装有329字节的块。 这意味着每个使用的块浪费167个字节= 12942834字节= 12.3 MB …