Memcached stats slabs 命令学习笔记

1. 简介

stats slabs 是 Memcached 中的一个命令,用于获取 slabs 相关的统计信息。slab(缓存页)是 Memcached 内存分配的基本单位,用于存储数据项。每个 slab 存储一组相同大小的数据项,可以被视为一个小的内存池。

通过使用 stats slabs 命令,我们可以查看 Memcached 当前所有 slab 的统计信息,包括 slab 的 ID、大小、当前已用空间、空闲空间和碎片等情况。

2. 语法

bashCopy Code
stats slabs

3. 实例

使用 stats slabs 命令可以查看到如下统计信息:

bashCopy Code
STAT 1:chunk_size 96 STAT 1:chunks_per_page 10922 STAT 1:total_pages 10 STAT 1:total_chunks 109220 STAT 1:used_chunks 0 STAT 1:free_chunks 109220 STAT 1:free_chunks_end 0 STAT 1:mem_requested 0 STAT 1:get_hits 0 STAT 1:cmd_set 0 ...

其中,1 表示 slab 的 ID,后面的各种 STAT 表示不同的统计信息,具体含义如下:

  • chunk_size:每个 chunk 的大小(字节)。
  • chunks_per_page:每个 page 中的 chunk 数量。
  • total_pages:该 slab 中的 page 总数。
  • total_chunks:该 slab 中的 chunk 总数。
  • used_chunks:该 slab 中已经被分配的 chunk 数量。
  • free_chunks:该 slab 中当前空闲的 chunk 数量。
  • free_chunks_end:该 slab 的最后一个 page 中的空闲 chunk 数量。
  • mem_requested:该 slab 中所有 chunk 被请求的内存总大小(字节)。
  • get_hits:从该 slab 中获取数据项的命中数量。
  • cmd_set:向该 slab 中添加数据项的命令数量。

使用 stats slabs <id> 命令可以查看指定 slab 的统计信息,例如:

bashCopy Code
stats slabs 2

4. 注意事项

  • stats slabs 命令只能在 Memcached 运行时使用。
  • 不同的 slab 具有不同的统计信息,可以通过比较不同 slab 的统计信息,优化缓存策略。