16.2.4.2  memcached平板统计

要获取slabs统计信息,请使用 stats slabs命令或等效的 API。

slab 统计信息为您提供有关已创建和分配用于在缓存中存储信息的 slab 的信息。您将获得有关每个单独的板类和整个板的总统计信息的信息。

STAT 1:chunk_size 104
STAT 1:chunks_per_page 10082
STAT 1:total_pages 1
STAT 1:total_chunks 10082
STAT 1:used_chunks 10081
STAT 1:free_chunks 1
STAT 1:free_chunks_end 10079
STAT 9:chunk_size 696
STAT 9:chunks_per_page 1506
STAT 9:total_pages 63
STAT 9:total_chunks 94878
STAT 9:used_chunks 94878
STAT 9:free_chunks 0
STAT 9:free_chunks_end 0
STAT active_slabs 2
STAT total_malloced 67083616
END

每个 slab 类的单独统计信息都以 slab ID 为前缀。每个分配的 slab 从最小到最大都有一个唯一的 ID。前缀数字表示与从指定增长因子计算出的块相关的板类编号。因此在示例中,1 是第一个块大小,9 是第 9 个块分配的大小。

下表提供了为每个块大小返回的参数以及每个参数的说明。

统计 描述 版本
chunk_size 分配给该 slab 类中每个块的空间。
chunks_per_page 此 slab 类的单个页面中的块数。
total_pages 分配给这个 slab 类的页数。
total_chunks 分配给 slab 类的块数。
used_chunks 分配给一个项目的块数..
free_chunks 尚未分配给项目的块数。
free_chunks_end 最后分配的页面末尾的空闲块数。
get_hits 此块的获取命中数 1.3.x
cmd_set 此块上的设置命令数 1.3.x
delete_hits 此块的删除命中数 1.3.x
incr_hits 此块的增量命中数 1.3.x
decr_hits 此块的递减命中数 1.3.x
cas_hits 此块的 CAS 命中数 1.3.x
cas_badval 此块上现有值不匹配的 CAS 命中数 1.3.x
mem_requested 此块内请求的内存的真实内存量 1.4.1

以下附加统计信息涵盖了整个服务器的信息,而不是逐个块的信息:

统计 描述 版本
active_slabs 分配的平板类总数。
total_malloced 分配给平板页面的内存总量。

slab 统计中的键值是 chunk_size, 以及对应的 total_chunksused_chunks参数。这些给出了系统内块的大小使用情况的指示。请记住,一个键值对被放入一个合适大小的块中。

从这些统计数据中,您可以了解您的大小以及区块分配和分布。如果您存储许多大小差异很大的项目,请考虑调整块大小增长因子以增加更大的步长,以防止块和内存浪费。大量不同的 slab 类,但每个 slab 中实际使用的块相对较少,是不良增长因素的一个很好的指示。增加增长因子会创建更少的 slab 类,因此可以更好地利用分配的页面。