##将phpize加入环境变量
1)将php的bin目录路径增加到 ~/.bash_profile中,为了方便调用
PATH=
P
A
T
H
:
PATH:
PATH:HOME/bin:/usr/local/lnmp/mysql/bin:/usr/local/lnmp/php/bin
source ~/.bash_profile
2)memcache目录中本来没有configure文件,所以没法编译
yum install autoconf
先执行命令:phpize
#########################################################################
phpize是用来扩展php扩展模块的,通过phpize可以建立php的外挂模块,比如你想在原来编译好的php中加入memcached或者ImageMagick等扩展模块,可以使用phpize。或者说,phpize的作用可以这样理解:侦测环境(phpize工具是在php安装目录下,基于这点phpize对应了当时的php环境,所以是要根据该php的配置情况生成对应的configure文件),建立一个configure文件。必须在一个目录下去运行phpize。那么phpize就知道你的的环境是哪个目录,并且configure文件建立在该目录下
#########################################################################
会生成configure文件
3)编译安装memcacheng
##编译
./configure
##安装
make && make install
4)修改php主配置文件,增加memcache模块
vim /usr/local/lnmp/php/etc/php.ini
873 extension=memcache.so
5)重新加载php
/etc/init.d/php-fpm reload
6)php -m | grep memcache 可以查看是否加载成功
php -m | grep mysql
7)安装memcached
yum install -y memcached
8)查看memcached的配置文件
[root@server5 sbin]# cat /etc/sysconfig/memcached
PORT=“11211”
USER=“memcached”
MAXCONN=“1024” ##最大链接数1024
CACHESIZE=“64”
OPTIONS="" (如果写为OPTIONS="-l 127.0.0.1" 即为只监听本机的11211端口)
9)启动memcached
/etc/init.d/memcached start
10)telnet测试 ##没有的话:yum install -y telnet
telnet localhost 11211
stats(查看状态)
set name 0 0 6 (0编号 0缓存时间(此处0代表不限制时间) 6限制字符数) key:name;编号:0;缓存时间:0(永久)valuce值:6位
westosawd
CLIENT_ERROR bad data chunk
ERROR
westos
STORED
get name
VALUE name 0 6
westos
END
delete name
DELETED
set name 0 5 6 ##设置缓存5s,过5s再获取name,为空
westos
STORED
get name
END
quit #退出
11)拷贝php页面到nginx默认发布目录
memcache.php监控页面;example.php测memcache命中率
[root@server1 memcache-2.2.5]# cp memcache.php example.php /usr/local/lnmp/nginx/html/
修改内容
define(‘ADMIN_USERNAME’,‘memcache’); ## Admin Username(自定义)
define(‘ADMIN_PASSWORD’,‘westos’); ## Admin Password(自定义)
KaTeX parse error: Expected 'EOF', got '#' at position 68: …re as an array #̲MEMCACHE_SERVERS[] = ‘mymemcache-server2:11211’; // add more as an array
只留一个主机,memcache没有转发或负载均衡机制,只能一个一个添加(因为本实验只有一个主机,其实可以添加多个)
12)访问http://172.25.230.5/memcache.php
输入用户名密码,可以查看memcache命中率,使用http://172.25.230.5/example.php不停刷新来测试
13)在物理机上分别对两个页面进行压测
[root@localhost ~]# ab -c 10 -n 5000 http://172.25.230.5/index.php #很慢,因为没有缓存,而且failed比较多 10个并发,5000个请求
[root@localhost ~]# ab -c 10 -n 5000 http://172.25.230.5/example.php #很快,因为访问缓存,而且没有failed的
观察时间和命中率