Linux运维之LNMP架构(memcache)
2019-06-29 22:58
1331 查看
Linux运维之LNMP架构(memcache)
- 什么是memcache
memcache是一套分布式的高速缓存系统,由LiveJournal的Brad Fitzpatrick开发,但目前被许多网站使用以提升网站的访问速度,尤其对于一些大型的、需要频繁访问数据库的网站访问速度提升效果十分显著
Memcache是一个高性能的分布式的内存对象缓存系统,通过在内存里维护一个统一的巨大的hash表,它能够用来存储各种格式的数据,包括图像、视频、文件以及数据库检索的结果等。简单的说就是将数据调用到内存中,然后从内存中读取,从而大大提高读取速度。
- memcache在lnmp架构中的部署
将phpize加入环境变量
phpize是用来扩展php扩展模块的,通过phpize可以建立php的外挂模块,比如你想在原来编译好的php中加入memcached或者ImageMagick等扩展模块,可以使用phpize。
vim ~/.bash_profile PATH=$PATH:$HOME/bin:/usr/local/lnmp/mysql/bin:/usr/local/lnmp/php/bin source ~/.bash_profile
memecache的编译安装
tat zxf memcache-2.2.5.tgz yum install autoconf phpize
cd /memcache-2.2.5/ phpize /.configure make && make install
修改php主配置文件,增加memcache模块
并重新加载php
vim /usr/local/lnmp/php/etc/php.ini 873 extension=memcache.so /etc/init.d/php-fpm reload
查看是否加载成功
php -m | grep memcache php -m | grep mysql
安装memcached
yum install -y memcached
查看memcached的配置文件
cat /etc/sysconfig/memcached PORT="11211" USER="memcached" MAXCONN="1024" ##最大链接数1024 CACHESIZE="64" OPTIONS="" (如果写为OPTIONS="-l 127.0.0.1" 即为只监听本机的11211端口)
启动memcached
systemctl start memcached
telnet测试
yum install telnet -y 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 #退出
拷贝php页面到nginx默认发布目录
cd /lnmp安装包/memcache-2.25 cp memcache.php example.php /usr/local/lnmp/nginx/html/
修改memcache.php内容
vim memcache.php define('ADMIN_USERNAME','memcache'); ## Admin Username(自定义) define('ADMIN_PASSWORD','westos'); ## Admin Password(自定义) $MEMCACHE_SERVERS[] = '172.25.230.5:11211'; // add more as an array #$MEMCACHE_SERVERS[] = 'mymemcache-server2:11211'; // add more as an array 只留一个主机,memcache没有转发或负载均衡机制,只能一个一个添加(因为本实验只有一个主机,其实可以添加多个)
测试:
开启ngixn打开浏览器
nginx nginx -t nginx -s reload 172.25.11.4/memcache.php
压力测试:
在真机上
ab -c 10 -n 5000 http://172.25.11.4/index.php #10个并发,5000个请求 ab -c 10 -n 5000 http://172.25.11.4/example.php
通过对比发现
前者很慢,因为没有缓存,而且failed比较多后者很快,因为有访问缓存,而且没有failed的
END
相关文章推荐
- Linux运维学习笔记之十七:LNMP的WEB架构深度优化之性能优化
- Linux运维之LNMP架构(openresty)
- linux运维进阶-lnmp架构之php的安装及配置
- 使用Nginx从零开始搭建基于LNMP架构的电影系统之一_Linux运维
- linux-运维进阶-28 LNMP动态网站架构
- linux运维进阶-lnmp架构之mysql安装及配置
- Linux运维进阶-文档总结-LNMP架构之Mysql的安装和配置
- Linux运维进阶-文档总结-LNMP架构之PHP的安装和测试和简单论坛搭建
- 服务器运维架构|Linux运维|云计算大数据
- 网站架构及linux运维管理资料
- 服务器运维与网站架构|Linux运维|X研究
- Linux主流架构运维工作简单剖析
- Linux运维进阶-文档总结-添加PHP的memcache缓存模块
- Linux运维与架构工程实践
- Linux运维企业架构实战系列
- Linux运维学习笔记之十六:LAMP与LNMP加速与缓存优化进阶实战
- linux的LNMP架构介绍、MySQL安装、PHP安装
- Linux主流架构运维工作简单剖析
- LNMP一键安装Linux系统下Nginx+MySQL+PHP这种网站服务器架构
- linux运维进阶-基于RHCS+iSCSI+CLVM实现Web服务的共享存储集群架构