ubuntu 下telnet 操纵memcache 实现
memcache作为一款优秀的进程外缓存,常常被运用于高并发系统架构中。这里主要谈谈怎么通过telnet工具,查看memcache运行状况并对其key进行管理维护。假设memcache安装目录:/usr/local/memcached
1、启动memcache
[root@localhost ~]# /usr/local/memcached/bin/memcached -d -m -u root -l 192.168.119.70 -p -c -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
[root@localhost ~]# telnet 192.168.119.70
Trying 192.168.119.70...
Connected to 192.168.119.70 (192.168.119.70).
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)、添加缓存
add id
STORED
如果key已经存在,则会添加失败。
b)、修改缓存
replace id
STORED
key存在时,成功;不存在时,失败。
c)、设置缓存
set id
STORED
key不存在时,添加【add】;已存在时,替换【replace】。
Ⅱ、读取
命令格式:get <key>+\r\n
<key>+:表示一个或多个key,多个key时,用空格隔开
a)、读取单个key的缓存
get id
VALUE id END
b)、读取多个key的缓存
Ⅲ、删除
命令格式:delete <key> \r\n
<key>:要删除的key
删除id
delete id
DELETED
Ⅳ、清空所有缓存
命令格式:flush_all
flush_all
OK
Ⅴ、查看缓存服务器状态
命令:stats
stats
STAT pid //进程id
STAT uptime //总的运行时间,单位描述
STAT time //当前时间
STAT version 1.4. //版本
STAT pointer_size //服务器指针位数,一般32位操作系统是32
STAT rusage_user 0.002999 //进程的累计用户时间
STAT rusage_system 1.277805 //进程的累计系统事件
STAT curr_connections //当前连接数
STAT total_connections //服务器启动后,总连接数
STAT connection_structures //连接结构的数量
STAT cmd_get //总获取次数
STAT cmd_set //总写入次数
STAT cmd_flush //总的的清空次数
STAT get_hits //总的命中次数
STAT get_misses //获取没有命中次数
STAT delete_misses //删除没有命中次数
STAT delete_hits //删除命中次数
STAT incr_misses //递增操作没有命中次数
STAT incr_hits //递增操作命中次数
STAT decr_misses //递减操作没有命中的次数
STAT decr_hits //递减操作命中的次数
STAT cas_misses //cas设置没有命中次数
STAT cas_hits //cas命中次数
STAT cas_badval //cas操作找到key,但版本过期,没有设置成功
STAT bytes_read //总共获取数据量
STAT bytes_written //总共写入数据量
STAT limit_maxbytes //最大允许使用内存,单位字节
STAT accepting_conns
STAT listen_disabled_num
STAT threads //当前线程数
STAT conn_yields
STAT bytes //已用缓存空间
STAT curr_items //当前缓存的keyvalue数
STAT total_items //总共缓存的keyvalue数,包括过期删除的
STAT evictions //通过删除keyvalue,释放内存次数
END
Ⅵ、打印版本
命令:version
version
VERSION 1.4.
Ⅶ、打印内存信息
命令:stats slabs
stats slabs
STAT :chunk_size
STAT :chunks_per_page
STAT :total_pages
STAT :total_chunks
STAT :used_chunks
STAT :free_chunks
STAT :free_chunks_end
STAT :get_hits
STAT :cmd_set
STAT :delete_hits
STAT :incr_hits
STAT :decr_hits
STAT :cas_hits
STAT :cas_badval
STAT active_slabs
STAT total_malloced
END
3、退出telnet
quit
ubuntu 下telnet 操纵memcache 实现的更多相关文章
- ubuntu下安装php memcache扩展
memcached 安装sudo apt-get install memcached memcached 参数说明memcached -d -m 50 -p 11211 -u root-m 指定使用多 ...
- ubuntu下telnet安装
系统默认安装了telnet(client),所以只能用telnet登录别人开启telnet服务的主机,其他人是不能telnet登录本机的. 现在想要的是让别人可以使用telnet登录本机,需要安装两个 ...
- ubuntu下设置数据库字符集
就linux环境下出现的数据库乱码的问题,以ubuntu为例进行的总结 ubuntu环境设置的字符集utf8,windows默认字符集是GBK,Ubuntu的默认字符集为utf-8,这使 得在用tel ...
- ubuntu下编译VLC
ubuntu下编译VLC 标签(空格分隔): ubuntu vlc 视频 编译 [TOC] 1.下载VLC源码包并解压 VLC的源码包在VLC的官网有,可以直接下载.也可以使用git来clone一个. ...
- Ubuntu 开启telnet、ftp服务
Telnet 这里我们就来对Ubuntu Linux telnet的安装设置进行一下讲解. 1. sudo apt-get install xinetd telnetd 2. Ubuntu Linux ...
- 2018.4.18 Ubuntu 的telnet命令详解
Ubuntu 的telnet命令详解 1.作用用途 Telnet 命令通常用来远程登录,Telnet 程序是基于 Telnet 协议的远程登录客户端程序.Telnet 协议是TCP/IP协议族中的一员 ...
- ubuntu下安装方式汇总
apt-get 可辅助通过 apt-cache search curl | grep php 查找已支持的插件,然后通过下面apt-get下载安装,例: apt-get install php5-cu ...
- [Swoole] 在Ubuntu下安装、快速开始
本文主要讲述在 Ubuntu 下编译安装 Swoole,并根据官方文档给出的demo进行了测试和搬运,包括:TCP服务器.UDP服务器.HTTP服务器.WebSocket服务器.异步客户端.定时器和协 ...
- 在Ubuntu下搭建ASP.NET 5开发环境
在Ubuntu下搭建ASP.NET 5开发环境 0x00 写在前面的废话 年底这段时间实在太忙了,各种事情都凑在这个时候,没时间去学习自己感兴趣的东西,所以博客也好就没写了.最近工作上有个小功能要做成 ...
随机推荐
- Android的布局优化之include、merge 、viewstub
以前在写布局的时候总是喜欢用自己熟悉的方式去写,从来也没有想过优化怎么的,后来又一次在上班的时候老大拿着我写的一个页面说我这个不行.我说这不是和设计图上的一模一样的么?怎么就不行了?然后他就跟我说了一 ...
- HDOJ 2206 IP的计算(正则表达式的应用)
Problem Description 在网络课程上,我学到了很多有关IP的知识.IP全称叫网际协议,有时我们又用IP来指代我们的IP网络地址,现在IPV4下用一个32位无符号整数来表示,一般用点分方 ...
- bzoj4097 [Usaco2013 dec]Vacation Planning
Description Air Bovinia is planning to connect the N farms (1 <= N <= 200) that the cows live ...
- c++ map 插入数据后,begin(),end()以及当前迭代器的变化
1. map.end()指向map的最后一个元素之后的地址,无论执行map.erase(iter)还是map.add(key, value),map.end()所返回的值永远不会发生变化,都是指向同一 ...
- SKLabelNode类
继承自 SKNode:UIResponder:NSObject 符合 NSCoding(SKNode)NSCopying(SKNode)NSObject(NSObject) 框架 /System/L ...
- WPS2012交叉引用技巧,word比wps这点强更新參考文献
WPS2012交叉引用技巧,word比wps这点强更新參考文献 到时生成仅仅有有一条线,好像WPS不能够,word能够,假设谁知道能够补充.^_^ 1.写论文,參考文献的改动非 ...
- linux下用phpize给PHP动态添加扩展(转)
使用php的常见问题是:编译php时忘记添加某扩展,后来想添加扩展,但是因为安装php后又装了一些东西如PEAR等,不想删除目录重装,别说,php还真有这样的功能. 我没有在手册中看到. 如我想增加b ...
- linux开机自动启动脚本
前言linux有自己一套完整的启动 体系,抓住了linux启动 的脉络,linux的启动 过程将不再神秘.阅读之前建议先看一下附图.本文中假设inittab中设置的init tree为:/etc/ ...
- Java 编程的动态性,第 6 部分: 利用 Javassist 进行面向方面的更改--转载
本系列的 第 4 部分和 第 5 部分讨论了如何用 Javassist 对二进制类进行局部更改.这次您将学习以一种更强大的方式使用该框架,从而充分利用 Javassist 对在字节码中查找所有特定方法 ...
- 开源消息中间件DotNetMQ
由于这个开源项目对我这种中间件菜鸟很有帮助,因此,我将官方的说明文档翻译如下: Introduction In this article, I will introduce a new and ind ...