解压文件并将php二进制命令加入环境变量中方便使用
[root@server1 ~]# tar zxf memcache-2.2.5.tgz
[root@server1 ~]# cd memcache-2.2.5
[root@server1 memcache-2.2.5]# vim ~/.bash_profile
[root@server1 memcache-2.2.5]# source ~/.bash_profile
-
编译汇编
使用phpize生成configure文件,然后进行汇编编译
[root@server1 memcache-2.2.5]# ./configure
[root@server1 memcache-2.2.5]# make &&make install -
php中添加memcache模块
[root@server1 etc]# cd /usr/local/lnmp/php/etc/
[root@server1 etc]# vim php.ini
[root@server1 etc]# /etc/init.d/php-fpm reload
-
memcached的配置
-
安装工具使用
[root@server1 etc]# yum install -y memcached
[root@server1 etc]# /etc/init.d/memcached start
-
查看监听端口
若想要改变监听的端口修改“/etc/sysconfig/memcached”options的内容即可
- 将memcache的测试文件复制到nginx的默认发布目录下
[root@server1 etc]# cd
[root@server1 ~]# cd memcache-2.2.5
[root@server1 memcache-2.2.5]# cp memcache.php example.php /usr/local/lnmp/nginx/html
- 设置memcache的密码
[root@server1 html]# vim memcache.php
修改密码与servers即可
talnet配置(实现远程连接服务器)
[root@server1 html]# yum install -y telnet
set key flags exptime bytes
key:键值对中的key,用于查找存储的数值
flags:包括值对的整形参数
exptime:缓存中保持键值对的时间(0表示无限长)
bytes:缓存中的字节数
value:存储的数值
测试:
输入172.25.42.1/memcache.php进行测试
需要输入用户和密码
输入配置文件memcache.php 中的用户和密码即可,登陆后页面如下所示
可以看到命中率为33.3%
访问172.25.42.1/example.php页面并不断刷新
再次访问172.25.42.1/memcache.php进行查看,可以看到命中率变为了93.8%(可以继续访问example.php页面,访问次数越多,命中率越高)
- 压力测试:memcache与未缓存的页面进行对比
安装测试软件
[root@server1 html]# yum install -y httpd-tools
访问缓存页面
[root@server1 html]# ab -c 10 -n 5000 http://172.25.42.1/example.php
10个并发的5000个请求共用了3s左右,且没有失败的请求
[root@server1 html]# ab -c 10 -n 5000 http://172.25.42.1/index.php
10个并发的5000个请求共用了将近9s,且失败的请求包有268个