感谢支持
我们一直在努力

Memcache Telnet 维护使用记录

memcache作为一款优秀的进程外缓存,常常被运用于高并发系统架构中。这里主要谈谈怎么通过telnet工具,查看memcache运行状况并对其key进行管理维护。假设memcache安装目录:/usr/local/memcached


1、启动memcache


[root@localhost ~]# /usr/local/memcached/bin/memcached -d -m 512  -u root -l 192.168.119.70 -p 12000 -c 512 -P /usr/local/memcached/memcached.pid 


启动参数详解
 -d:以守护进程方式启动。如果该参数没有指定,当按ctrl+c命令结束,memcache自动关闭
 -m:分配给memcache使用的最大内存数 单位是m,默认是64m
 -u: 指定运行memcache的用户
 -l: 指定监听的ip地址
 -p: 指定监听的tcp端口号,可以通过-u指定udp端口.默认是11211
 -c: 最大并发连接数
 -P: 报错进程id的文件
 memcache 启动之后,我们就可以通过telnet连接memcache,对其进行简单操作管理。


2、telnet连接memcache



  1. [root@localhost ~]# telnet 192.168.119.70 12000   
  2. Trying 192.168.119.70…  
  3. Connected to 192.168.119.70 (192.168.119.70).  
  4. Escape character is ‘^]’.   

连接成功之后,即可对memcache进行操作管理了,常用的命令有:


Ⅰ、添加修改
命令格式:<command> <key> <flags> <exptime> <bytes>\r\n<data block>\r\n
<command>:add, set或 replace
<key> :缓存的名字
<flag>:16位无符号整数,和key要存储的数据一起存储,并在程序get缓存时,返回。
<exptime>:过去时间,0 表示永远不过期,如果非零,表示unix时间或距此秒数
<bytes>:存储数据的字节数
\r\n: 表示换行回车
命令结果:
STORED :表示成功
NOT_STORED : 表示失败


a)、添加缓存
如果key已经存在,则会添加失败。


b)、修改缓存



  1. replace id 1 0 4  
  2. 3456  
  3. STORED  

key存在时,成功;不存在时,失败。


c)、设置缓存



  1. set id 1 0 4  
  2. 2345  
  3. STORED  

key不存在时,添加【add】;已存在时,替换【replace】。


Ⅱ、读取


命令格式:get <key>+\r\n


<key>+:表示一个或多个key,多个key时,用空格隔开


a)、读取单个key的缓存



  1. get id  
  2. VALUE id 1 4  
  3. 1234  
  4. END  

b)、读取多个key的缓存




  1. get id name  
  2. VALUE id 1 4  

  3. 3456  
  4. VALUE name 1 3  
  5. jim  
  6. END  

Ⅲ、删除


命令格式:delete <key> \r\n


<key>:要删除的key


删除id



  1. delete id   

  2. DELETED  

Ⅳ、清空所有缓存


命令格式:flush_all


  1. flush_all  

  2. OK   

Ⅴ、查看缓存服务器状态


命令:stats



  1. stats  

  2. STAT pid 2711     //进程id  

  3. STAT uptime 2453  //总的运行时间,单位描述  

  4. STAT time 1344856333  //当前时间  

  5. STAT version 1.4.0 //版本  

  6. STAT pointer_size 32    //服务器指针位数,一般32位操作系统是32  

  7. STAT rusage_user 0.002999  //进程的累计用户时间   

  8. STAT rusage_system 1.277805  //进程的累计系统事件  

  9. STAT curr_connections 1  //当前连接数  

  10. STAT total_connections 11  //服务器启动后,总连接数  

  11. STAT connection_structures 11  //连接结构的数量  

  12. STAT cmd_get 17   //总获取次数  

  13. STAT cmd_set 1  //总写入次数  

  14. STAT cmd_flush 1   //总的的清空次数  

  15. STAT get_hits 1  //总的命中次数  

  16. STAT get_misses 7   //获取没有命中次数  

  17. STAT delete_misses //删除没有命中次数  

  18. STAT delete_hits 4   //删除命中次数  

  19. STAT incr_misses //递增操作没有命中次数   

  20. STAT incr_hits //递增操作命中次数  

  21. STAT decr_misses //递减操作没有命中的次数  

  22. STAT decr_hits //递减操作命中的次数  

  23. STAT cas_misses //cas设置没有命中次数  

  24. STAT cas_hits //cas命中次数  

  25. STAT cas_badval //cas操作找到key,但版本过期,没有设置成功  

  26. STAT bytes_read 455    //总共获取数据量  

  27. STAT bytes_written 1175  //总共写入数据量  

  28. STAT limit_maxbytes 1048576  //最大允许使用内存,单位字节  

  29. STAT accepting_conns 1      

  30. STAT listen_disabled_num 0  

  31. STAT threads 5   //当前线程数  

  32. STAT conn_yields 0  

  33. STAT bytes 56      //已用缓存空间  

  34. STAT curr_items 1  //当前缓存的keyvalue数  

  35. STAT total_items 7 //总共缓存的keyvalue数,包括过期删除的  

  36. STAT evictions //通过删除keyvalue,释放内存次数  

  37. END  

Ⅵ、打印版本


命令:version



  1. version  

  2. VERSION 1.4.0  

Ⅶ、打印内存信息


命令:stats slabs



  1. stats slabs  

  2. STAT 1:chunk_size 80  

  3. STAT 1:chunks_per_page 13107  

  4. STAT 1:total_pages 1  

  5. STAT 1:total_chunks 13107  

  6. STAT 1:used_chunks 1  

  7. STAT 1:free_chunks 1  

  8. STAT 1:free_chunks_end 13105  

  9. STAT 1:get_hits 10  

  10. STAT 1:cmd_set 10  

  11. STAT 1:delete_hits 4  

  12. STAT 1:incr_hits 0  

  13. STAT 1:decr_hits 0  

  14. STAT 1:cas_hits 0  

  15. STAT 1:cas_badval 0  

  16. STAT active_slabs 1  

  17. STAT total_malloced 1048560  

  18. END  

3、退出telnet


quit 

赞(0) 打赏
转载请注明出处:服务器评测 » Memcache Telnet 维护使用记录
分享到: 更多 (0)

听说打赏我的人,都进福布斯排行榜啦!

支付宝扫一扫打赏

微信扫一扫打赏