LNMP模块--memcache实现php页面的加速缓存

lnmp架构部署请查看我前面的博文:https://blog.csdn.net/y_yang666/article/details/87784082
Memcache简介:
  • memcache是一套分布式的高速缓存系统,由LiveJournal的Brad Fitzpatrick开发,但目前被许多网站使用以提升网站的访问速度,尤其对于一些大型的、需要频繁访问数据库的网站访问速度提升效果十分显著 [1] 。这是一套开放源代码软件,以BSD license授权发布。
  • Memcache是一个高性能的分布式的内存对象缓存系统,通过在内存里维护一个统一的巨大的hash表,它能够用来存储各种格式的数据,包括图像、视频、文件以及数据库检索的结果等。简单的说就是将数据调用到内存中,然后从内存中读取,从而大大提高读取速度
  • memcached 是高性能的分布式内存缓存服务器。一般的使用目的
    是,通过缓存数据库查询结果,减少数据库访问次数,以提高动态 Web 应用的速度、提高可扩展性。
Memcache的部署:

1.官网下载Memcache安装包并解压

[root@server1 ~]# tar zxf memcache-2.2.5.tgz 
[root@server1 memcache-2.2.5]# ls
config9.m4   memcache.c                  memcache_queue.h
config.m4    memcache_consistent_hash.c  memcache_session.c
config.w32   memcache.dsp                memcache_standard_hash.c
CREDITS      memcache.php                php_memcache.h
example.php  memcache_queue.c            README

在这里插入图片描述
2.添加php环境变量并刷新

[root@server1 memcache-2.2.5]# vim ~/.bash_profile ##添加php环境变量
PATH=$PATH:$HOME/bin:/usr/local/lnmp/mysql/bin:/usr/local/lnmp/php/bin
[root@server1 bin]# source ~/.bash_profile    ##刷新环境变量

在这里插入图片描述
3.配置编译环境
phpize是用来扩展php扩展模块的,通过phpize可以建立php的外挂模块,比如你想在原来编译好的php中加入memcached或者ImageMagick等扩展模块,可以使phpize。

[root@server1 memcache-2.2.5]# phpize 
Configuring for:
PHP Api Version:         20131106
Zend Module Api No:      20131226
Zend Extension Api No:   220131226
[root@server1 memcache-2.2.5]# ./configure

在这里插入图片描述
在这里插入图片描述
4.编译安装

[root@server1 memcache-2.2.5]# make && make install

在这里插入图片描述
5.给php添加Memcache模块

[root@server1 memcache-2.2.5]# cd /usr/local/lnmp/php/etc
[root@server1 etc]# vim php.ini   ##编辑配置文件
 873 extension=memcache.so    ##将873行注释去掉
 [root@server1 etc]# /etc/init.d/php-fpm reload  ##重新加载配置文件
 [root@server1 etc]# php -m | grep memcache    ##过滤Memcache模块,发现已经添加成功
memcache

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
6.安装Memcache服务,并开启

[root@server1 ~]# yum install -y memcached
[root@server1 ~]# /etc/init.d/memcached start  ##开启服务 ,
[root@server1 ~]# netstat -tnlp    ##查看11211端口是否存在
tcp        0      0 0.0.0.0:11211               0.0.0.0:*                   LISTEN      6857

在这里插入图片描述
测试:

[root@server1 ~]# telnet localhost 11211
set name 0 0 6        ## 第一个0:编号 ;第二个0:缓存时间 ;  6:字符数
westos
STORED
westosh
ERROR
get name
VALUE name 0 6
westos
END
delete name     ##删除name
DELETED
get name
END
quit    ##退出

在这里插入图片描述
在这里插入图片描述
7.Memcache实现网页登陆查看

[root@server1 memcache-2.2.5]# cp memcache.php example.php /usr/local/lnmp/nginx/html/     ##拷贝.php文件到nginx默认发布目录下
[root@server1 memcache-2.2.5]# cd /usr/local/lnmp/nginx/html/
[root@server1 html]# vim memcache.php
 23 define('ADMIN_PASSWORD','westos');      // Admin Password     ##修改登陆密码
 28 $MEMCACHE_SERVERS[] = '172.25.4.1:11211'; // add more as an array    ##更改ip

在这里插入图片描述
测试:
1.网页访问:172.25.4.1/example.php
在这里插入图片描述
2.网页访问:172.25.4.1/memcache.php,进行登陆(用户:memcache ;密码:westos(上面配置文件中修改的密码)),出现memcache页面
在这里插入图片描述
右上角可以查看缓存命中率

3.访问速度测试:
1).访问index.php,可以查看到访问时间和出错情况

[kiosk@foundation4 ~]$ ab -c 10 -n 5000 http://172.25.4.1/index.php  ##10并发 5000次(10个用户同时访问5000次)

在这里插入图片描述
在这里插入图片描述
2).真机访问example.php,可以查看到速度非常快,出错少(因为访问example.php时,直接从缓存中读取)

[kiosk@foundation4 ~]$ ab -c 10 -n 5000 http://172.25.4.1/example.php

在这里插入图片描述
在这里插入图片描述
网页查看缓存命中率为100%
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值