前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Memcached 状态详解

Memcached 状态详解

作者头像
franket
发布2021-10-19 11:43:32
3390
发布2021-10-19 11:43:32
举报
文章被收录于专栏:技术杂记技术杂记

前言

memcached 是一个免费开源的,高性能分布式内存对象缓存系统

memcached 运维管理过程中,会需要了解缓存系统当前的状态,这里分享一下 memcached 状态的详细解释

Tip: memcached 相关基础,可以参考之前的一篇博客 memcached基础

详细可以参考 memcached 源码

Tip: 目前最新版本为 Memcached v1.4.26 ,实验中使用 v1.4.25


概要


连接实例

由于 memcached 的协议非常简单,可以使用 telnet 直接连接

代码语言:javascript
复制
[mtest@meminst ~]$ telnet localhost 11212
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
version
VERSION 1.4.25

Tip: 使用 telnet 作客户端,是在直接使用 tcp 建立连接和传送数据,所以并没有其它客户端那么友好的提示信息或界面,这个得忍


stats

要获取内部统计数据可以通过 stats 命令,最主要的状态信息也都在里面

代码语言:javascript
复制
[mtest@meminst ~]$ telnet localhost 11212
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
stats 
STAT pid 92579
STAT uptime 15483344
STAT time 1466503609
STAT version 1.4.25
STAT libevent 1.4.13-stable
STAT pointer_size 64
STAT rusage_user 30237.694171
STAT rusage_system 48141.977307
STAT curr_connections 74
STAT total_connections 11487
STAT connection_structures 99
STAT reserved_fds 50
STAT cmd_get 2179473016
STAT cmd_set 1780727826
STAT cmd_flush 0
STAT cmd_touch 0
STAT get_hits 2151718170
STAT get_misses 27754846
STAT delete_misses 523904
STAT delete_hits 609080
STAT incr_misses 0
STAT incr_hits 0
STAT decr_misses 0
STAT decr_hits 0
STAT cas_misses 0
STAT cas_hits 0
STAT cas_badval 0
STAT touch_hits 0
STAT touch_misses 0
STAT auth_cmds 0
STAT auth_errors 0
STAT bytes_read 234944598773
STAT bytes_written 1788730431727
STAT limit_maxbytes 4294967296
STAT accepting_conns 1
STAT listen_disabled_num 0
STAT time_in_listen_disabled_us 0
STAT threads 10
STAT conn_yields 330
STAT hash_power_level 23
STAT hash_bytes 67108864
STAT hash_is_expanding 0
STAT malloc_fails 0
STAT bytes 3841174015
STAT curr_items 7995364
STAT total_items 1780727826
STAT expired_unfetched 210230
STAT evicted_unfetched 9554685
STAT evictions 17096414
STAT reclaimed 281812
STAT crawler_reclaimed 0
STAT crawler_items_checked 0
STAT lrutail_reflocked 0
END

状态详解

Verb

Comment

pid

此服务进程号

uptime

此服务的连续运行时间,单位是秒

time

服务器所在主机当前系统的时间,单位是秒

version

服务软件版本

libevent

libevent 版本

pointer_size

所在主机操作系统的指针位数,32或64

rusage_user

进程的累计用户时间

rusage_system

进程的累计系统时间

curr_connections

当前系统打开的连接数

total_connections

从启动到现在,系统打开过的连接总数

connection_structures

实例分配的连接构造(结构体)数

reserved_fds

内部使用(保留)的FD数

cmd_get

get 命令执行的累计次数 (cmd_get = get_hits + get_misses)

cmd_set

set 命令执行的累计次数

cmd_flush

flush 命令执行的累计次数

cmd_touch

touch 命令执行的累计次数

get_hits

get 命令成功返回的累计次数

get_misses

get 命令失败返回的累计次数

delete_misses

delete 命令失败返回的累计次数

delete_hits

delete 命令成功返回的累计次数

incr_misses

incr 命令失败返回的累计次数

incr_hits

incr 命令成功返回的累计次数

decr_misses

decr 命令失败返回的累计次数

decr_hits

decr 命令成功返回的累计次数

cas_misses

cas 命令失败返回的累计次数

cas_hits

cas 命令成功返回的累计次数

cas_badval

cas 命令检查值不等(错误的 CAS id)而更新失败的累计次数

touch_hits

touch 命令成功返回的累计次数

touch_misses

touch 命令失败返回的累计次数

auth_cmds

认证命令执行累计次数

auth_errors

认证命令执行失败累计次数

bytes_read

实例从网络读取的总字节数

bytes_written

实例发送到网络的总字节数

limit_maxbytes

缓存允许使用的最大字节数,等于我们启动服务时设置的大小

accepting_conns

布尔值,实例是否接受连接(1为接受,0为不接受)

listen_disabled_num

统计当前服务器连接数曾经达到最大连接的次数,这个次数应该为0或者接近于0,如果这个数字不断增长, 就要小心我们的服务了

time_in_listen_disabled_us

实例由于到达最大连接数,而拒绝连接(处于监听状态但不接受新连接)的累计时间,单位为ms

threads

可以被请求的工作线程的总数量

conn_yields

Number of times any connection yielded to another due to hitting the -R limit

hash_power_level

当前的哈希表翻倍的级别(Current size multiplier for hash table)

hash_bytes

当前哈希表的大小,单位字节

hash_is_expanding

布尔值1或0,表明哈希表是否增涨到过新的量级

malloc_fails

内存分配失败的次数

bytes

当前存储总字节数

curr_items

实例当前存储的items数量

total_items

从服务器启动以后存储过的items总数量

expired_unfetched

已过期但未获取的对象数目

evicted_unfetched

已驱逐但未获取的对象数目

evictions

为获取空闲内存(LRU)而删除的items数,分配给memcache的空间用满后需要删除旧的items来得到空间分配给新的items

reclaimed

因为条目过期而执行的回收次数

crawler_reclaimed

被 LRU 爬虫释放的累计对象数

crawler_items_checked

被 LRU 检查过的对象总数

lrutail_reflocked

Times LRU tail was found with active ref .Items can be evicted to avoid OOM errors

详细可以参考 memcached 源码

这些值的组合结果可以获取常见的可用性标准,如:

命中率 = get_hits / cmd_get * 100%

其它的指标以此类推

有空可以据此写一个 memcached 的状态性能指标展示工具


命令汇总

  • telnet localhost 11212

原文地址

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • 概要
    • 连接实例
      • stats
        • 状态详解
        • 命令汇总
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档