如何查看Memcache 运行状态 stats(Status) —— Memcache Telnet 接口

2024-02-11 18:18

本文主要是介绍如何查看Memcache 运行状态 stats(Status) —— Memcache Telnet 接口,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!


     下面主要介绍一下如果监控 memcached 实例的运行情况. 我们需要明确的是需要通过 telnet才能获得Memcache的运行信息. 下面详细介绍下Memcache Telnet接口的主要用法。

连接到Telnet

     当Memcache启动后,可以先使用 "ps -ef"查看哪一个 IP 和 端口正在被Memcache进程使用,如果知道了Memcache运行的ip和端口,我们可以通过下面这个命令访问Memcache实例:

telnet 10.0.0.2 11211

Memcache 命令

下面是一些主要用到的命令,具体详细情况请查阅官方文档 doc/protocol.txt。

CommandDescriptionExample
getReads a valueget mykey
setSet a key unconditionallyset mykey 0 60 5
addAdd a new keyadd newkey 0 60 5
replaceOverwrite existing keyreplace key 0 60 5
appendAppend data to existing keyappend key 0 60 15
prependPrepend data to existing keyprepend key 0 60 15
incrIncrements numerical key value by given numberincr mykey 2
decrDecrements numerical key value by given numberdecr mykey 5
deleteDeletes an existing keydelete mykey
flush_allInvalidate specific items immediatelyflush_all
Invalidate all items in n secondsflush_all 900
statsPrints general statisticsstats
Prints memory statisticsstats slabs
Prints memory statisticsstats malloc
Print higher level allocation statisticsstats items
 stats detail
 stats sizes
Resets statisticsstats reset
versionPrints server version.version
verbosityIncreases log levelverbosity
quitTerminate telnet sessionquit

查看Statistics

通过下面命令查看 statistics 信息:

stats
你会获得一个服务状态的详细列表信息,具体情况如下:
 
参数 描述
pid 7862 memcache服务器进程ID
uptime 12617972 服务器已运行秒数
time 1320756409 服务器当前Unix时间戳
version 1.4.5 memcache版本
pointer_size 64 操作系统指针大小
rusage_user 1.731736 进程累计用户时间
rusage_system 251.421778 进程累计系统时间
curr_connections 41 当前连接数量
total_connections 848 Memcached运行以来连接总数
connection_structures 46 Memcached分配的连接结构数量
cmd_get 164377 get命令请求次数
cmd_set 58617 set命令请求次数
cmd_flush 0 flush命令请求次数
get_hits 105598 get命令命中次数
get_misses 58779 get命令未命中次数
delete_misses 0 delete命令未命中次数
delete_hits 0 delete命令命中次数
incr_misses 0 incr命令未命中次数
incr_hits 0 incr命令命中次数
decr_misses 0 decr命令未命中次数
decr_hits 0 decr命令命中次数
cas_misses 0 cas命令未命中次数
cas_hits 0 cas命令命中次数
cas_badval 0 使用擦拭次数
auth_cmds 0 认证命令处理的次数
auth_errors 0 认证失败数目
bytes_read 262113283 读取总字节数
bytes_written 460023263 发送总字节数
limit_maxbytes 536870912 分配的内存总大小(字节)
accepting_conns 1 服务器是否达到过最大连接(0/1)
listen_disabled_num 0 失效的监听数
threads 4 当前线程数
conn_yields 0 连接操作主动放弃数目
bytes 1941693 当前存储占用的字节数
curr_items 476 当前存储的数据总数
total_items 58617 启动以来存储的数据总数
evictions 0 LRU释放的对象数目
reclaimed 48830 已过期的数据条目来存储新数据的数目
如果你不确定你是否有足够的内存,你可以通过查看 evictions”的值来确定Memcache实例的内存使用情况,如果还有足够的内存,那么 evictions”的值应该为0或者不在增长。

查看 Memory Statistics

你可以通过下面命令查看当前 memory statistics :

stats slabs

Example:

STAT 1:chunk_size 80
STAT 1:chunks_per_page 13107
STAT 1:total_pages 1
STAT 1:total_chunks 13107
STAT 1:used_chunks 13106
STAT 1:free_chunks 1
STAT 1:free_chunks_end 12886
STAT 2:chunk_size 100
STAT 2:chunks_per_page 10485
STAT 2:total_pages 1
STAT 2:total_chunks 10485
STAT 2:used_chunks 10484
STAT 2:free_chunks 1
STAT 2:free_chunks_end 10477
[...]
STAT active_slabs 3
STAT total_malloced 3145436
END

查看各个Slab中Item的数目和年龄(最后一次访问距现在的秒数)

stats items
 结果:
stats items
STAT items:1:number 220
STAT items:1:age 83095
STAT items:2:number 7
STAT items:2:age 1405
[...]
END

清空统计数据

stats resets

显示内存分配数据

stats malloc

设置或显示详细操作记录

stats detail [on|off|dump]

清空所有键值

flush_all

退出

quit

最大有效期为 30 !

     不要设置过期时间超过30天,如果超过30天,Memcache会把它当做一个 Unix timestamp。

      设置最大有效期(2592000ms)例子:

set my_key 0 2592000 1
1

这篇关于如何查看Memcache 运行状态 stats(Status) —— Memcache Telnet 接口的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/700489

相关文章

Java汇编源码如何查看环境搭建

《Java汇编源码如何查看环境搭建》:本文主要介绍如何在IntelliJIDEA开发环境中搭建字节码和汇编环境,以便更好地进行代码调优和JVM学习,首先,介绍了如何配置IntelliJIDEA以方... 目录一、简介二、在IDEA开发环境中搭建汇编环境2.1 在IDEA中搭建字节码查看环境2.1.1 搭建步

Linux使用nohup命令在后台运行脚本

《Linux使用nohup命令在后台运行脚本》在Linux或类Unix系统中,后台运行脚本是一项非常实用的技能,尤其适用于需要长时间运行的任务或服务,本文我们来看看如何使用nohup命令在后台... 目录nohup 命令简介基本用法输出重定向& 符号的作用后台进程的特点注意事项实际应用场景长时间运行的任务服

如何在一台服务器上使用docker运行kafka集群

《如何在一台服务器上使用docker运行kafka集群》文章详细介绍了如何在一台服务器上使用Docker运行Kafka集群,包括拉取镜像、创建网络、启动Kafka容器、检查运行状态、编写启动和关闭脚本... 目录1.拉取镜像2.创建集群之间通信的网络3.将zookeeper加入到网络中4.启动kafka集群

Oracle数据库执行计划的查看与分析技巧

《Oracle数据库执行计划的查看与分析技巧》在Oracle数据库中,执行计划能够帮助我们深入了解SQL语句在数据库内部的执行细节,进而优化查询性能、提升系统效率,执行计划是Oracle数据库优化器为... 目录一、什么是执行计划二、查看执行计划的方法(一)使用 EXPLAIN PLAN 命令(二)通过 S

PostgreSQL如何用psql运行SQL文件

《PostgreSQL如何用psql运行SQL文件》文章介绍了两种运行预写好的SQL文件的方式:首先连接数据库后执行,或者直接通过psql命令执行,需要注意的是,文件路径在Linux系统中应使用斜杠/... 目录PostgreSQ编程L用psql运行SQL文件方式一方式二总结PostgreSQL用psql运

如何用Docker运行Django项目

本章教程,介绍如何用Docker创建一个Django,并运行能够访问。 一、拉取镜像 这里我们使用python3.11版本的docker镜像 docker pull python:3.11 二、运行容器 这里我们将容器内部的8080端口,映射到宿主机的80端口上。 docker run -itd --name python311 -p

hdu1043(八数码问题,广搜 + hash(实现状态压缩) )

利用康拓展开将一个排列映射成一个自然数,然后就变成了普通的广搜题。 #include<iostream>#include<algorithm>#include<string>#include<stack>#include<queue>#include<map>#include<stdio.h>#include<stdlib.h>#include<ctype.h>#inclu

hdu1565(状态压缩)

本人第一道ac的状态压缩dp,这题的数据非常水,很容易过 题意:在n*n的矩阵中选数字使得不存在任意两个数字相邻,求最大值 解题思路: 一、因为在1<<20中有很多状态是无效的,所以第一步是选择有效状态,存到cnt[]数组中 二、dp[i][j]表示到第i行的状态cnt[j]所能得到的最大值,状态转移方程dp[i][j] = max(dp[i][j],dp[i-1][k]) ,其中k满足c

状态dp总结

zoj 3631  N 个数中选若干数和(只能选一次)<=M 的最大值 const int Max_N = 38 ;int a[1<<16] , b[1<<16] , x[Max_N] , e[Max_N] ;void GetNum(int g[] , int n , int s[] , int &m){ int i , j , t ;m = 0 ;for(i = 0 ;

hdu3006状态dp

给你n个集合。集合中均为数字且数字的范围在[1,m]内。m<=14。现在问用这些集合能组成多少个集合自己本身也算。 import java.io.BufferedInputStream;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStream;import java.io.Inp