开发者社区> nothingfinal> 正文

通过telnet连接查看memcache服务器

简介: memcache
+关注继续查看

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

          
1、启动memcache

[plain] view plaincopy
  1. [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

[plain] view plaincopy
  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)、添加缓存

[plain] view plaincopy
  1. add id 1 0 4  
  2. 1234  
  3. STORED  

         如果key已经存在,则会添加失败。

b)、修改缓存

[plain] view plaincopy
  1. replace id 1 0 4  
  2. 3456  
  3. STORED  

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

c)、设置缓存

[plain] view plaincopy
  1. set id 1 0 4  
  2. 2345  
  3. STORED  

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

 

Ⅱ、读取

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

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

a)、读取单个key的缓存

[plain] view plaincopy
  1. get id  
  2. VALUE id 1 4  
  3. 1234  
  4. END  

 

 b)、读取多个key的缓存

[plain] view plaincopy
  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

[plain] view plaincopy
  1. delete id   
  2. DELETED  

 

Ⅳ、清空所有缓存

命令格式:flush_all

[plain] view plaincopy
  1. flush_all  
  2. OK  

 

Ⅴ、查看缓存服务器状态

命令:stats

[plain] view plaincopy
  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

[plain] view plaincopy
  1. version  
  2. VERSION 1.4.0  

Ⅶ、打印内存信息

命令:stats slabs

[plain] view plaincopy
  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 

[plain] view plaincopy
  1. quit

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Ubuntu Linux下与MOTO E2手机进行USB NET连接
为了能让E2能在UBUNTU下进行SyncML而忙乎。E2刷到了49P(屠龙刀),手机支持USB NET方式连接,在WINDOWS下装好驱动后,WINDOWS能顺利与E2进行USB NET连接,但无法使用同样的设置,使其工作在UBUNTU LINUX下。   WINDOWS下网络连接自动获取到了IP地址:192.168.16.1,手机IP:192.168.16.2,可以PING通。Ubuntu
952 0
Netty的http client连接池设计
Netty是由JBOSS提供的一个java开源框架。Netty提供异步的、事件驱动的网络应用程序框架和工具,用以快速开发高性能、高可靠性的网络服务器和客户端程序。本文转载自 hetaohapp 的CSDN博客。将为大家分享使用Netty作为http的客户端的场景下,pool该如何进行设计。
13124 0
Netty是如何断开连接的?
Netty是如何断开连接的?
24 0
阿里云服务器如何登录?阿里云服务器的三种登录方法
购买阿里云ECS云服务器后如何登录?场景不同,阿里云优惠总结大概有三种登录方式: 登录到ECS云服务器控制台 在ECS云服务器控制台用户可以更改密码、更换系.
25036 0
阿里云服务器端口号设置
阿里云服务器初级使用者可能面临的问题之一. 使用tomcat或者其他服务器软件设置端口号后,比如 一些不是默认的, mysql的 3306, mssql的1433,有时候打不开网页, 原因是没有在ecs安全组去设置这个端口号. 解决: 点击ecs下网络和安全下的安全组 在弹出的安全组中,如果没有就新建安全组,然后点击配置规则 最后如上图点击添加...或快速创建.   have fun!  将编程看作是一门艺术,而不单单是个技术。
18602 0
阿里云服务器怎么设置密码?怎么停机?怎么重启服务器?
如果在创建实例时没有设置密码,或者密码丢失,您可以在控制台上重新设置实例的登录密码。本文仅描述如何在 ECS 管理控制台上修改实例登录密码。
20318 0
asp.net连接Access数据库
Dim myConnection As OleDbConnection     Dim myCommand As OleDbCommand    sub page_load(sender as Object,e as EventArgs)     '1.
741 0
将 instance 连接到 flat_net - 每天5分钟玩转 OpenStack(88)
上一节我们创建了 "flat_net",本节将在此网络中部署 instance 并验证连通性。 launch 新的 instance “cirros-vm1”,选择网络 falt_net。 cirros-vm1 分配到的 IP 为 172.16.1.103。
809 0
+关注
nothingfinal
软件开发,安全加密
1069
文章
341
问答
文章排行榜
最热
最新
相关电子书
更多
JS零基础入门教程(上册)
立即下载
性能优化方法论
立即下载
手把手学习日志服务SLS,云启实验室实战指南
立即下载