开源项目

知识点

相关文章

更多

最近更新

更多

Memcached stats items 显示各个 slab 中 item 的数目和存储时长

2019-04-26 17:05|来源: 网路

Memcached stats items 命令

Memcached stats items 命令用于显示各个 slab 中 item 的数目和存储时长(最后一次访问距离现在的秒数)。

语法:

stats items 命令的基本语法格式如下:

stats items

实例

stats items
STAT items:1:number 1
STAT items:1:age 7
STAT items:1:evicted 0
STAT items:1:evicted_nonzero 0
STAT items:1:evicted_time 0
STAT items:1:outofmemory 0
STAT items:1:tailrepairs 0
STAT items:1:reclaimed 0
STAT items:1:expired_unfetched 0
STAT items:1:evicted_unfetched 0
END

相关问答

更多
  • 今天看到的用于memcached的用例的主要原因是使用简单的 HTML片段缓存(或类似的应用程序)可以获得更高的内存效率。 如果您需要将不同的对象字段存储在不同的memcached键中,那么Redis哈希将会更有效地提高内存,但是当您有大量的键 - > simple_string对时,memcached应该能够为您提供更多的项目兆字节。 关于memcached的其他事情是好点: 这是一个非常简单的代码片段,所以如果你只需要它提供的功能,那么这是一个合理的选择,但是我从来没有用过它。 它是多线程的,所以如果您 ...
  • 那么,我发现了这个问题! 为了了解每秒的请求,我使用了可用的memcache.php文件。 它告诉我每秒有350个请求。 问题在于,过去几天使用量有所增加,而且每秒的请求数只是整个正常运行时间的平均值。 按(点击+错过)/正常运行时间计算。 现在重新启动memcached后,这个平均值返回更多正确的值,实际上每秒钟有4000个请求。 tl; dr:第一篇文章中的错误统计。 正确的统计数据是:4000个请求/秒。 我想我的硬件根本无法应付这种情况。 Well, I've found the problem! ...
  • 统计数据看起来很奇怪,因为它们错了。 这是一个memcached错误(整数溢出2 ^ 32)。 memcached开发人员已经承认并修复了它。 有关更多详细信息,请参阅https://github.com/memcached/memcached/issues/161 。 The statistics looked so strange because they are wrong. It is a memcached bug (integer overrun at 2^32). memcached deve ...
  • 是的,Memcache自己的数据结构每个项目消耗超过50个字节。 这取决于您的数据和密钥,因此在64位计算机上假设有60+个字节。 在看memcache的代码时可以看到它: https : //github.com/memcached/memcached/blob/master/memcached.h 以下是构成项目的内容: /** * Structure for storing items within memcached. */ typedef struct _stritem { struc ...
  • 我在1.4.20上做了一些测试(启动应用程序时没有任何标志),并且可以确认在大约5分钟内我运行了测试,页面没有更改板类。 上面说过,有一种叫做automover东西,它是一个后台线程,可以在页面未使用时自动更改页面的slab类。 I did some tests on 1.4.20 (starting the app without any flags) and can confirm that within the ~5 minutes I ran the tests, pages did not cha ...
  • 我认为一个简单的答案是,这就是方法派上用场的地方。 如果您的“业务规则”是移动设备的统计信息是本机统计信息和项目所做的所有修改的总和,那么我的建议是为移动设备和项目提供统计信息(稍后会详细介绍),然后提供您的移动课程一个方法,如getStat($statName) ,负责进行求和。 这可能被称为“外观”设计模式(您向外界呈现一个干净的界面,模糊了项目修改统计数据的细节)。 要彻底清除它,请将您的成员属性标记为受保护或私有,并仅允许应用程序的其他部分使用getter。 关于赋予多个类很多相同属性/行为的问题, ...
  • 经过一番调查后,我看到了问题的根本原因。 我在settings.py中使用了Django 1.2的缓存配置(我使用django 1.2): CACHE_BACKEND = 'memcached://127.0.0.1:11211/' 当我决定更改超时时,我从Django 1.3的新Django文档中复制粘贴的超时设置。 因此,这些超时设置被忽略,并使用默认超时(5分钟)。 After some investigation I saw the root cause of the problem. I had ...
  • Memcached将分配的内存拆分为固定大小(1 MB)的“页面”。 每个页面进一步划分为“Chunks”并与某些“Slab”相关联。 “平板”将与具有相同大小的“块”的多个“页面”相关联,以保持某个范围内的值,最大值为块大小。 鉴于此类比,块大小可以是页面大小的最大值,即1MB。 这解释了为什么要存储在memcache中的最大值大小限制为1MB。 让我们举个例子来说清楚。 哟想要存储1001字节的值; memcached将查找包含1000到2000字节之间值的slab。 然后它找到一个带有空块的页面,并将 ...
  • 我不认为total_items意味着你认为它意味着什么。 它是一个简单的计数器,只要存储了某些东西就会增加 一个简单的测试验证了这一点。 存储相同的对象两次。 curr_items将是一个, total_items将是两个。 由于您的驱逐和回收都是零,所以存储的所有内容仍然存在,因为没有任何被驱逐并且没有过期的密钥被回收。 数据可能随着时间的推移而发生变化,但一切仍然存在。 I don't think total_items means what you think it means. It is a si ...
  • 解决方案 因此,事实证明我对该主题的分散信息来源导致我使用不正确的配置设置。 最后我决定从github上获取Enyim源并自己调查这个问题,结果发现web.config中的配置甚至没有被使用。 因为Enyim正在寻找名为enyim.com的部分,而我正在使用com.enyim ,哦语义。 正确的配置如下。 Web.config文件