服务端:

通过printf配合nc向memcached中写入数据
[root@yz6245 ~]# printf "set key1 0 0 6\r\noldboy\r\n" |nc 10.39.6.245 11211
STORED
#出现STORED表示成功添加数据

set的字节是6,后面就要有6个字符,否则就会报错
[root@yz6245 ~]# printf "set key2 0 0 5\r\noldboy\r\n" |nc 10.39.6.245 11211
CLIENT_ERROR bad data chunk
ERROR

通过printf配合nc从memcached读取数据
[root@yz6245 ~]# printf "get key1\r\n" |nc 10.39.6.245 11211
VALUE key1 0 6
oldboy
END

删除数据
[root@yz6245 ~]# printf "delete key1\r\n" |nc 10.39.6.245 11211
DELETED

通过telnet写入数据
[root@yz6245 ~]# telnet 127.0.0.1 11211
Trying 127.0.0.1...
telnet: connect to address 127.0.0.1: Connection refused
You have mail in /var/spool/mail/root
[root@yz6245 ~]# telnet 10.39.6.245 11211
Trying 10.39.6.245...
Connected to 10.39.6.245.
Escape character is '^]'.
set user01 0 0 7 #写入数据
oldgirl
STORED
get user01 #浏览数据
VALUE user01 0 7
oldgirl
END
delete user01 #删除数据
DELETED
get user01 #在浏览就没有了
END
quit
Connection closed by foreign host.

提示:telnet连接后如果输入字符错了,可以通过Ctrl+Backspace删除

关闭memcached
ps => kill/pkill

启动多个实例,建议用-P参数指定固定的pid文件
[root@yz6245 ~]# /usr/local/memcached/bin/memcached -d -m 64 -p 11211 -c 8192 -l 10.39.6.245 -u root -v -vv -P /var/run/11211.pid
[root@yz6245 ~]# /usr/local/memcached/bin/memcached -d -m 64 -p 11212 -c 8192 -l 10.39.6.245 -u root -v -vv -P /var/run/11212.pid

[root@yz6245 ~]# ps -ef |grep memcached |grep -v grep
root 26954 1 0 15:33 ? 00:00:00 /usr/local/memcached/bin/memcached -d -m 64 -p 11211 -c 8192 -l 10.39.6.245 -u root -v -vv -P /var/run/11211.pid
root 26998 1 0 15:34 ? 00:00:00 /usr/local/memcached/bin/memcached -d -m 64 -p 11212 -c 8192 -l 10.39.6.245 -u root -v -vv -P /var/run/11212.pid

[root@yz6245 ~]# lsof -i :11211
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
memcached 26954 root 26u IPv4 33694094 0t0 TCP yz6245.hadoop.data.sina.com.cn:memcache (LISTEN)
memcached 26954 root 27u IPv4 33694096 0t0 UDP yz6245.hadoop.data.sina.com.cn:memcache
memcached 26954 root 28u IPv4 33694096 0t0 UDP yz6245.hadoop.data.sina.com.cn:memcache
memcached 26954 root 29u IPv4 33694096 0t0 UDP yz6245.hadoop.data.sina.com.cn:memcache
memcached 26954 root 30u IPv4 33694096 0t0 UDP yz6245.hadoop.data.sina.com.cn:memcache
[root@yz6245 ~]# lsof -i :11212
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
memcached 26998 root 26u IPv4 33694389 0t0 TCP yz6245.hadoop.data.sina.com.cn:11212 (LISTEN)
memcached 26998 root 27u IPv4 33694391 0t0 UDP yz6245.hadoop.data.sina.com.cn:11212
memcached 26998 root 28u IPv4 33694391 0t0 UDP yz6245.hadoop.data.sina.com.cn:11212

memcached 26998 root 29u IPv4 33694391 0t0 UDP yz6245.hadoop.data.sina.com.cn:11212
memcached 26998 root 30u IPv4 33694391 0t0 UDP yz6245.hadoop.data.sina.com.cn:11212

关闭
[root@yz6245 ~]# kill `cat /var/run/11211.pid`

关闭方法小结:
[root@yz6245 ~]# ps -ef |grep memcached |grep -v grep |awk '{print $2}'|xargs kill
[root@yz6245 ~]# ps -ef |grep memcached |grep -v grep
[root@yz6245 ~]#

客户端:

准备lNMP环境(略)
yum install -y gcc texinfo
tar -zxf libevent-2.0.22-stable.tar.gz
cd libevent-2.0.22-stable
./configure --prefix=/usr/local/libevent
make && make install

http://blog.s135.com/soft/linux/nginx_php/memcache/memcache-2.2.5.tgz
tar zxvf memcache-2.2.5.tgz
cd memcache-2.2.5
/usr/local/php/bin/phpize
Configuring for:
PHP Api Version: 20131106
Zend Module Api No: 20131226
Zend Extension Api No: 220131226

./configure --enable-memcache --with-php-config=/usr/local/php/bin/php-config
make && make install

[root@yz6205 memcache-2.2.5]# ls -l /usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/
total 1904
-rwxr-xr-x 1 root root 259872 Jun 17 13:31 memcache.so
-rwxr-xr-x 1 root root 1101488 Jun 16 18:20 opcache.a
-rwxr-xr-x 1 root root 584596 Jun 16 18:20 opcache.so

vim /usr/local/php/etc/php.ini #添加如下内容
extension_dir = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/"
extension=memcache.so

重启php-fpm
/usr/local/php/sbin/php-fpm -c /usr/local/php/etc/php.ini

看到如下界面说明memcache客户端安装成功了

[root@yz6245 memcached]# printf "stats\r\n" |nc 10.39.6.245 11211 #统计各种信息

[root@yz6245 memcached]# printf "stats settings\r\n" |nc 10.39.6.245 11211 #统计设置信息,如线程数
stats slabs #查看slab相关信息

通过memadmin php工具展示memcache状态信息
http://www.junopen.com/memadmin/memadmin-1.0.12.tar.gz

解压到虚拟主机站点目录下
tar zxvf memadmin-1.0.12.tar.gz -C /data0/nginx/html/

memcache笔记的更多相关文章

  1. memcache 笔记

    在windows下安装memecache,进入到安装目录,执行帮助命令可以查看到相关帮助 启动memcache,相关命令如上,比如-p就是端口号,memcache默认端口号是11211 语法:增加ad ...

  2. Memcache笔记05-Memcache安全性

    Memcache服务器端都是直接通过客户端连接后直接操作,没有任何的验证过程,这样如果服务器是直接暴露在互联网上的话是比较危险,轻则数据泄露被其他无关人员查看,重则服务器被入侵,因为Mecache是以 ...

  3. Memcache笔记03-php操作Memcached

    通过php程序操作Memcached服务几种形式 Memcache 扩展 Memcached 扩展 Socket套接字操作 memcached-client.php(函数) 对于php扩展来说,dan ...

  4. php 与 memcache 笔记

    一:安装 Memcache是什么Memcache是danga.com的一个项目,最早是为 LiveJournal 服务的,目前全世界不少人使用这个缓存项目来构建自己大负载的网站,来分担数据库的压力.它 ...

  5. Memcache 笔记(2)

    一.Memcache概述出现的原因:随着数据量的增大,访问的集中,使得数据库服务器的负担加重,数据库响应恶化,网站显示延迟等 memcache:是高性能的分布式内存缓存服务器.通过缓存数据库的查询结果 ...

  6. Memcache笔记(1)

    缓存主要分为:页面缓存和数据缓存 Memcache .redis.mongodb都是做数据缓存的 Memcache是什么? 是一个高性能的分布式的内存对象缓存系统,通过在内存里维护一个统一的巨大的ha ...

  7. Memcache笔记02-telnet操作memcached

    telnet操作Memcached 登录到telnet连接到memcached服务: telnet 127.0.0.1 11211 memcached的基本命令: //当telnet登录成功可以看到一 ...

  8. Memcache笔记01-Memcache的安装

    memcached是什么? Memcached是一个高性能的分布式的内存对象缓存系统,目前全世界不少人使用这个缓存项目来构建自己大负载的网站,来分担数据库的压力,通过在内存里维护一个统一的巨大的has ...

  9. Memcache笔记04-Memcached机制深入了解

    Memcached机制深入了解 ①基于c/s架构 ,协议简单 c/s架构,此时memcached为服务器端,我们可以使用如PHP,c/c++等程序连接memcached服务器. memcached的服 ...

随机推荐

  1. 流畅的python 14章可迭代的对象、迭代器 和生成器

    可迭代的对象.迭代器和生成器 迭代是数据处理的基石.扫描内存中放不下的数据集时,我们要找到一种惰性获取数据项的方式,即按需一次获取一个数据项.这就是迭代器模式(Iterator pattern). 迭 ...

  2. git常用命令总结(转载)

    Workspace:工作区 Index / Stage:暂存区 Repository:仓库区(或本地仓库) Remote:远程仓库 一.新建代码库 # 在当前目录新建一个Git代码库 $ git in ...

  3. linux环境配置时钟同步ntpd服务

    配置: 服务器1:192.168.169.139 服务器2:192.168.169.140 服务器3:192.168.169.141 目的:NTP能与互联网的时间保持同步,而且本身也是一台NTP服务器 ...

  4. vue之 node.js 的简单介绍

    一.什么是 node.js? 它是可以运行在JavaScript的服务平台 二.安装 1.node.js的特性 - 非阻塞IO模型 - 时间驱动 2.运用场景 - 高并发低业务 - 实时场景 - 聊天 ...

  5. shell sed 命令

    1:行首空格  sed 's/^[ \t]*//g'  2:行末空格 sed 's/[ \t]*$//g' 3,删除行首的空格或TAB,并删除<tr>.cat poem2id.txt | ...

  6. redis 笔记02 对象、数据库

    对象 Redis并没有使用之前介绍的数据结构来实现键值对数据库,而是基于那些数据结构创建了一个对象系统,这个系统包含字符串对象.列表对象.哈希对象.集合对象和有序集合对象这五种类型对象, 每种对象都用 ...

  7. oracle 任务使用

    文章访问地址:http://www.cnblogs.com/hoojo/p/oracle_procedure_job_interval.html

  8. JDK1.8之Stream

    为什么需要 Stream Stream 作为 Java 8 的一大亮点,它与 java.io 包里的 InputStream 和 OutputStream 是完全不同的概念.它也不同于 StAX 对 ...

  9. iptables配置顺序-两条规则会忽略后边的

    oracle在centos本机能够正常访问,关闭防火墙也能够远程访问,但是一旦开启防火墙则不能远程访问 尝试添加规则iptables -A INPUT -m state --state NEW -m ...

  10. Secondary ,Supplementary alignment 和bwa mem的-M -Y参数

    1.supplementary alignment supplementary alignment是指一条read的一部分和参考区域1比对成功,另一部分和参考区域2比对成功,参考区域1和参考区域2没有 ...