服务端:

通过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. mysql分组取每组前几条记录(排名)

    1.创建表 create table tb( name varchar(10), val int, memo varchar(20) ); 2.插入数据 insert into tb values(' ...

  2. “技术产品”面向市场的表达方法思辨——BY Me

    “技术产品”面向市场的表达方法思辨 首先,我们来看看“技术产品”在面向市场去表达的时候,怎么表述是容易被市场接受和理解的,“目标受众是谁?”.“市场切入点是什么?”,做到有的放矢,打动目标受众.切中其 ...

  3. mysql密码忘记该怎么办?

    环境:linux;mysql5.7 mysql密码忘记: [root@izwz9f40l0qo5cpnn8qwmpz ~]# mysql -u root -pEnter password: ERROR ...

  4. Redis持久化方式RDB和AOF

    Redis 持久化 RDB(快照) 优点 rdb是可进行压缩的二进制文件,表示Redis在某一个时间点的数据快照.非常使用与备份,灾难恢复等场景.比如使用定时任务执行bgsave并备份rdb到serv ...

  5. php foreach函数的用法

    php foreach函数用法举例.  Foreach 函数(PHP4/PHP5) foreach 语法结构提供了遍历数组的简单方式. foreach 仅能够应用于数组和对象,如果尝试应用于其他数据类 ...

  6. Python(名称空间、函数嵌套、函数对象)

    一.名称空间: 名称空间 定义:存放名字和值的绑定关系       内置名称空间 python自带的名字,如print.int.str 解释器启动就会生效   全局名称空间 文件级别定义的名字,都会放 ...

  7. s5_day8作业

    # 1 整理今天装饰器代码(每人手写一份,注意,是手写,交到小组长手里,明天我检查),准备明天默写 # 2 编写日志装饰器,实现功能如:一旦函数f1执行,则将消息2017-07-21 11:12:11 ...

  8. springmvc自定义视图

    自定义视图 可以整合jfreechart.excel @RequestMapping("/testView") public String testView(){ System.o ...

  9. 参考MongoRepository,为接口生成bean实现注入

    首先弄个注解,给代码个入口,这个就是mongo的@EnableMongoRepositories了. @Target(ElementType.TYPE) @Retention(RetentionPol ...

  10. 拓扑排序(附LeetCode题目)

    算法期中考到一题关于拓扑序的题目,觉得很值得一写. 1.什么是拓扑序? 对一个有向无环图进行拓扑排序,假如图中存在一条从顶点A到顶点B的路径,则拓扑序中顶点A出现在顶点B的前面.要注意的是,这是对有向 ...