温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Xcache加速php缓存笔记

发布时间:2020-07-23 11:39:46 来源:网络 阅读:737 作者:强小虎 栏目:web开发

                          Php缓存和优化实战

缓存原理:

        当用户请求一个php程序的时候,服务器的php引擎根据客户端请求解析php,并将其编译的编码为特定的操作码,默认情况下,php解析完之后会自动丢弃这个解析的操作码,而操作码缓存会将用户请求解析的源码放到共享内存里,方便下次调取,这样就大大减少了cpu的负载量

 

LNMP php缓存过程

1首先客户端向服务器申请php请求

2服务端收到客户端请求后,会将这个信息交给php引擎,也就是fastcgi(php-fpm)进行处理,LAMP用的apache自带的插件(libso)。

3php-fpm调用php解析器来读取站点磁盘的php文件,加载到内存中

4php解析器将php程序编译成opcode文件,然后缓存起来

5php程序将opcpde执行后,返回给nginx,然后返回客户端

6nginx再次接受客户端请求,会直接从opcode调取,这样就不用执行第4部,方便简洁

 

Php缓存加速器:

  常见的有xcache,eAccelerator,zendOpcache,在企业中常用的还是xcache,其次是eAccelerator。

那么现在开始安装缓存加速软件

环境准备:

就按照我之前的LNMP环境搭建了,有需要的可以看看文档。

查看nginx web版本

[root@localhost ~]# /application/nginx/sbin/nginx -v

nginx version: nginx/1.6.2

Php版本

[root@localhost ~]# /application/php/bin/php -v

PHP 5.3.28 (cli) (built: Apr 16 2016 03:56:50)

Copyright (c) 1997-2013 The PHP Group

Zend Engine v2.3.0, Copyright (c) 1998-2013 Zend Technologies

 

Mysql版本

[root@localhost ~]# mysql -u root -p

Enter password:

Welcome to the MySQL monitor.  Commands end with ; or \g.

Your MySQL connection id is 1

Server version: 5.5.32 MySQL Community Server (GPL)

 

LNMP缓存提示:

不论是Apache还是nginx,最后都是通过php提供动态解析程序来进行的,不论是Apache的libphp5.so模块模式,还是nginx的fastcgi模式,都是一样的,php引擎优化都是一致的,都是基于php服务(php.ini)来进行的,两者之间无差异!

 

安装php缓存加速器

那么我在这里直接用xcache缓存软件了。

首先下载xcache

[root@localhost xiaohu]# wget http://xcache.lighttpd.net/pub/Releases/3.2.0/xcache-3.2.0.tar.bz2

[root@localhost xcache-3.2.0]# ./configure  --enable-xcache --with-php-config=/application/php/bin/php-config

[root@localhost xcache-3.2.0]# make

Don't forget to run 'make test'. 出现这个成功,继续install

[root@localhost xcache-3.2.0]# make install

Installing shared extensions:     /application/php/lib/php/extensions/no-debug-non-zts-20090626/

查看有没有xcache.so文件有代表成功

[root@localhost xcache-3.2.0]# ls -l /application/php/lib/php/extensions/no-debug-non-zts-20090626/xcache.so

-rwxr-xr-x. 1 root root 653772  4月 16 22:14 /application/php/lib/php/extensions/no-debug-non-zts-20090626/xcache.so

 

验证xcache

修改php.ini 配置xcache

[root@localhost ~]# cd /application/php/lib/

[root@localhost lib]# ls

php  php.ini

[root@localhost lib]# echo  >>php.ini

[root@localhost lib]# echo ';xcache config by xiaohu 20160419--------------' >> php.ini

[root@localhost lib]# tail -2 php.ini

 

;xcache config by xiaohu 20160419--------------

编辑xcache.ini 修改相关配置参数

[root@localhost ~]# vim xiaohu/xcache-3.2.0/xcache.ini

将修改后的xcache加载到php.ini

[root@localhost ~]# cat xiaohu/xcache-3.2.0/xcache.ini  >> /application/php/lib/php.ini

查看修改的参数,只修改了相关的参数

 

检查xcache缓存加速情况

再次执行php命令,查看缓存生效情况


向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI