ubuntu 下telnet 操纵memcache 实现

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

1、启动memcache

[plain] view plaincopy

    [[email protected] ~]# /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

    [[email protected] ~]# telnet 192.168.119.70 12000
    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)、添加缓存

[plain] view plaincopy

    add id 1 0 4
    1234
    STORED  

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

b)、修改缓存

[plain] view plaincopy

    replace id 1 0 4
    3456
    STORED  

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

c)、设置缓存

[plain] view plaincopy

    set id 1 0 4
    2345
    STORED  

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

Ⅱ、读取

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

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

a)、读取单个key的缓存

[plain] view plaincopy

    get id
    VALUE id 1 4
    1234
    END   

b)、读取多个key的缓存

[plain] view plaincopy

get id name
VALUE id 1 4
3456
VALUE name 1 3
jim
END

Ⅲ、删除

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

<key>:要删除的key

删除id

[plain] view plaincopy

    delete id
    DELETED  

Ⅳ、清空所有缓存

命令格式:flush_all

[plain] view plaincopy

    flush_all
    OK  

Ⅴ、查看缓存服务器状态

命令:stats

[plain] view plaincopy

    stats
    STAT pid 2711     //进程id
    STAT uptime 2453  //总的运行时间,单位描述
    STAT time 1344856333  //当前时间
    STAT version 1.4.0 //版本
    STAT pointer_size 32    //服务器指针位数,一般32位操作系统是32
    STAT rusage_user 0.002999  //进程的累计用户时间
    STAT rusage_system 1.277805  //进程的累计系统事件
    STAT curr_connections 1  //当前连接数
    STAT total_connections 11  //服务器启动后,总连接数
    STAT connection_structures 11  //连接结构的数量
    STAT cmd_get 17   //总获取次数
    STAT cmd_set 1  //总写入次数
    STAT cmd_flush 1   //总的的清空次数
    STAT get_hits 1  //总的命中次数
    STAT get_misses 7   //获取没有命中次数
    STAT delete_misses //删除没有命中次数
    STAT delete_hits 4   //删除命中次数
    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 455    //总共获取数据量
    STAT bytes_written 1175  //总共写入数据量
    STAT limit_maxbytes 1048576  //最大允许使用内存,单位字节
    STAT accepting_conns 1
    STAT listen_disabled_num 0
    STAT threads 5   //当前线程数
    STAT conn_yields 0
    STAT bytes 56      //已用缓存空间
    STAT curr_items 1  //当前缓存的keyvalue数
    STAT total_items 7 //总共缓存的keyvalue数,包括过期删除的
    STAT evictions //通过删除keyvalue,释放内存次数
    END  

Ⅵ、打印版本

命令:version

[plain] view plaincopy

    version
    VERSION 1.4.0  

Ⅶ、打印内存信息

命令:stats slabs

[plain] view plaincopy

    stats slabs
    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 1
    STAT 1:free_chunks 1
    STAT 1:free_chunks_end 13105
    STAT 1:get_hits 10
    STAT 1:cmd_set 10
    STAT 1:delete_hits 4
    STAT 1:incr_hits 0
    STAT 1:decr_hits 0
    STAT 1:cas_hits 0
    STAT 1:cas_badval 0
    STAT active_slabs 1
    STAT total_malloced 1048560
    END  

3、退出telnet

[plain] view plaincopy

    quit  
时间: 2024-10-11 00:24:28

ubuntu 下telnet 操纵memcache 实现的相关文章

ubuntu 下telnet服务安装配置

1. sudo apt-get install xinetd telnetd 2. sudo vim /etc/xinetd.conf并加入以下内容进行下一步的Ubuntu Linux telnet设置: # Simple configuration file for xinetd # # Some defaults, and include /etc/xinetd.d/ defaults { # Please note that you need a log_type line to be a

ubuntu下安装php memcache扩展

memcached 安装sudo apt-get install memcached memcached 参数说明memcached -d -m 50 -p 11211 -u root-m 指定使用多少兆的缓存空间:-p 指定要监听的端口: -u 指定以哪个用户来运行 安装php-memcache模块sudo apt-get install php5-memcache 编辑配置文件sudo vi /etc/php5/conf.d/memcache.ini;uncomment the next l

ubuntu 下安装配置 telnet server服务

下面我们来对Ubuntu Linux telnet的安装和设置进行一下讲解.首先我们需要加载telnet的服务,之后对于root等有关方面进行设置. 在Windows系统中,telnet的配置相对简单一些.那么在Ubuntu Linux中的telnet的设置就相对比较麻烦了.不少朋友都对这个安装过程不熟悉.没有关系,这里我们就来对Ubuntu Linux telnet的安装设置进行一下讲解. 1. sudo apt-get install xinetd telnetd 2. Ubuntu Lin

ubuntu下设置数据库字符集

就linux环境下出现的数据库乱码的问题,以ubuntu为例进行的总结 ubuntu环境设置的字符集utf8,windows默认字符集是GBK,Ubuntu的默认字符集为utf-8,这使 得在用telnet登录远程服务器或查看windows文件时出现乱码.需要将ubuntu环境设置为GBK或GB2312,或设置软件使其正确显示汉 字.下面以GBK字符集为例进行说明: 一.修改Ubuntu默认字符集为GBK 1.首先设置sudo vi /var/lib/locales/supported.d/lo

ubuntu下docker固定IP配置及桥接

ubuntu下docker固定IP配置及桥接 一.Docker的四种网络模式 Docker在创建容器时有四种网络模式,bridge为默认不需要用--net去指定,其他三种模式需要在创建容器时使用--net去指定. bridge模式,使用--net=bridge指定,默认设置. none模式,使用--net=none指定. host模式,使用--net=host指定. container模式,使用--net=container:容器名称或ID指定.(如:--net=container:30b668

ubuntu下php开发环境搭建,nginx+(cgi)php5fpm+memcached+xdebug

由于只是开发环境,所以都是选择比较简单的apt-get安装方式 ,但中间也遇到一点问题. 首先安装nginx nginx的安装和配置其实很简单,nginx本身非常轻量级, 直接 sudo apt-get install nginx 就可以了 他的配置文件是在/etc/nginx/里面,网站项目路径是在/var/www里面,安装之后一定要确保nginx的启动账户有对网站目录的访问权限,否则会报错. 第二步,安装cgi linux底下的cgi程序非常多,在这里我选择的是php5-fpm 方便  在这

ubuntu下memcached启动停止脚本

工作需求,需要自己写一个memcached的启动停止脚本,呕心沥血,终于完成,虽然很搓很搓,还是记录一下吧,废话不多说直接上脚本 #! /bin/sh # ckconfig: - 55 45 # description: The memcached daemon is a network memory cache service. # processname: memcached # config: /etc/memcached.conf # Source function library -

ubuntu 搭建php7-memcached和memcache扩展

Memcache存放Session 1.如果你能修改到服务器配置文件,那就打开打开php.ini(ubuntu php7 在/etc/php/7.0/apache2/php.ini) 或者某个目录下的 .htaccess : 二:php安装memcace扩展 老方法的安装memcache会报错! 工作到这里 完美!看上图 问题:我phpinfo中已经有了memcache 和memcached扩展 答! PHP 连接 Memcached 参考链接1:https://serversforhacker

ubuntu下卸载python2和升级python3.5

卸载python只需一条语句就可以实现 sudu apt-get remove python ubuntu下安装python3 sudo apt-get install python3 但这样只安装了python3.4 要想使用python3.5,则必须升级python3.4 sudo add-apt-repository ppa:fkrull/deadsnakes sudo apt-get update sudo apt-get install python3.5 使用以上三行命令便可升级py