PHP开启缓存加速
PHP默认会将Operate Code文件丢弃,缓存加速是将其保存下来,放置共享内存中,以便在下次调用该PHP页面时重用,避免相同代码的重复编译
___________________________________________________________
■ LAMP环境PHP解析原理
___________________________________________________________
Apache接收客户的PHP程序请求,并根据规则过滤之
Apache将PHP程序请求传递给PHP处理模块libphp5.so
PHP引擎定位磁盘上的PHP文件,并将其加载到内存中解析
PHP处理模块libphp5.so将PHP源码编译成opcode
PHP处理模块libphp5.so执行opcode,然后把opcode缓存起来
Apache接收客户端新的PHP程序请求,PHP引擎直接读取缓存执行opcode文件,并将结果返回
■ LNMP环境PHP解析原理
___________________________________________________________
Nginx接收客户端的PHP程序访问请求
Nginx根据扩展名等过滤规则将PHP程序请求传递给解析PHP的FCGI(PHP FPM)进程
PHP FPM进程调用PHP解析器读取站点磁盘上的PHP文件,并加载到内存中
PHP解析器将PHP程序编译成为opcode文件,然后把opcode缓存起来
PHP FPM引擎执行opcode树后,返回数据给Nginx,进而返回客户端
Nginx接收客户新的PHP程序请求,PHP FPM引擎就会直接读取缓存中的opcode并执行,将结果返回
■ 缓存加速插件安装配置(xcache)
___________________________________________________________
[root@Web_server src]# wget http://xcache.lighttpd.net/pub/Releases/3.2.0/xcache-3.2.0.tar.bz2
[root@Web_server src]# tar xf xcache-3.2.0.tar.bz2
[root@Web_server src]# cd xcache-3.2.0
[root@Web_server xcache-3.2.0]# /usr/local/php/bin/phpize
[root@Web_server xcache-3.2.0]# ./configure --enable-xcache --with-php-config=/usr/local/php/bin/php-config
[root@Web_server xcache-3.2.0]# make && make install
[root@Web_server xcache-3.2.0]# ll /usr/local/php/lib/php/extensions/no-debug-non-zts-20121212/
total 2208
-rwxr-xr-x 1 root root 1021684 Apr 13 10:33 opcache.a
-rwxr-xr-x 1 root root 538161 Apr 13 10:33 opcache.so
-rwxr-xr-x 1 root root 692628 Apr 18 09:44 xcache.so #<==生成xcache.so模块
[root@Web_server xcache-3.2.0]# cat /usr/local/src/xcache-3.2.0/xcache.ini >> /usr/local/php/etc/php.ini
[root@Web_server xcache-3.2.0]# tail -85 /usr/local/php/etc/php.ini | egrep -v "^;|^$"
[xcache-common]
extension = xcache.so
[xcache.admin]
xcache.admin.enable_auth = On
xcache.admin.user = "mOo"
xcache.admin.pass = "md5 encrypted password"
[xcache]
xcache.shm_scheme = "mmap"
xcache.size = 256M
xcache.count = 2
xcache.slots = 8K
xcache.ttl = 86400
xcache.gc_interval = 3600
xcache.var_size = 64M
#更改标红参数,生产环境根据硬件和业务数据来调整
[root@Web_server xcache-3.2.0]# /usr/local/php/bin/php -v #检查配置
PHP 5.5.31 (cli) (built: Apr 13 2016 10:29:58)
Copyright (c) 1997-2015 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2015 Zend Technologies
with XCache v3.2.0, Copyright (c) 2005-2014, by mOo
with XCache Cacher v3.2.0, Copyright (c) 2005-2014, by mOo
[root@Web_server ~]# echo -n "szk" |md5sum
[root@Web_server ~]# vim /usr/local/php/etc/php.ini #配置xcache用户密码
xcache.admin.user = "szk"
xcache.admin.pass = "005eff7dd9626f0c30f2eb8003ceafc9"
[root@Web_server ~]# cp -a /usr/local/src/xcache-3.2.0/htdocs/ /data/www/xadmin
[root@Web_server ~]# chown -R nobody.nobody /data/www/xadmin
[root@Web_server ~]# /etc/init.d/php-fpm start
■ 缓存加速插件安装配置(OPcache)
___________________________________________________________
#若5.5版本,会自动安装opcache插件,编译时--enable=opcache启用
[root@Web_server ~]# ll /usr/local/php/lib/php/extensions/no-debug-non-zts-20121212/
-rwxr-xr-x 1 root root 538161 Apr 13 10:33 opcache.so
[root@Web_server ~]# vim /usr/local/php/etc/php.ini #若编译没有启用,则在配置文件中添加下面内容即可
zend_extension=opcache.so
[opcache]
opcache.memory_consumption=128
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=4000
opcache.revalidate_freq=60
opcache.fast_shutdown=1
opcache.enable=1
opcache.enable_cli=1
[root@Web_server ~]# /usr/local/php/bin/php -v
PHP 5.5.31 (cli) (built: Apr 13 2016 10:29:58)
Copyright (c) 1997-2015 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2015 Zend Technologies
with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2015, by Zend Technologies
PHP开启缓存加速的更多相关文章
- 怎么看网站是否开启CDN加速?测试网站全国访问速度方法详解
注意域名,动静分离的网站,只对静态文件的域名做了cdn 怎么看网站有没开启CDN? 要看一个网站是否开启CDN,方法很简单,只要在不同的地区ping网址就可以,比如在山东济南ping www.jb51 ...
- 12秒开机!ExpressCache SSD缓存加速
SSD固态硬盘的读写速度比传统硬盘快了很多,读取速度能到300M/s 写入速度大约在80M/S 但SSD硬盘的价格也笔记机械硬盘高了很多,128G的固态硬盘淘宝价大概在800左右,想想现在随便一个软件 ...
- PHP7安装Memcache+Memcached缓存加速WordPress教程
PHP7安装Memcache+Memcached缓存加速WordPress教程 2016年1月19日 6,691 Views 生活方式 PHP7最显著的变化就是性能的极大提升,已接近Facebook开 ...
- 用CSS开启硬件加速来提高网站性能
国外一篇文章,有点意思,转载过来,准备尝试下~ 中文地址:http://www.cnblogs.com/rubylouvre/p/3471490.html 原文地址:http://blog.teamt ...
- 使用tmpfs作为缓存加速缓存的文件目录
使用tmpfs作为缓存加速缓存的文件目录 [root@web02 ~]# mount -t tmpfs tmpfs /dev/shm -o size=256m[root@web02 ~]# mount ...
- 开启gpu加速的高性能移动端相框组件!
通过设置新的css3新属性translateX来代替传统的绝对定位改变left值的动画原理,新属性translateX会开启浏览器自带的gpu硬件加速动画性能,提高流畅度从而提高用户体验, 代码有很详 ...
- ubuntu 15 安装cuda,开启GPU加速
1 首先要开启GPU加速就要安装cuda.安装cuda,首先要安装英伟达的驱动.ubuntu有自带的开源驱动,首先要禁用nouveau.这儿要注意,虚拟机不能安装ubuntu驱动.VMWare下显卡只 ...
- 用CSS开启硬件加速来提高网站性能(转)
翻译文章,原文地址:http://blog.teamtreehouse.com/increase-your-sites-performance-with-hardware-accelerated-cs ...
- Nginx使用Expires增加浏览器缓存加速(转)
转载自:Nginx使用Expires增加浏览器缓存加速 Nginx可以更改HTTP头部,这个是Web服务器必须的,当然Nginx更可以支持在HTTP头部中添加Expires等相关信息,增强浏览器缓存, ...
- CSS开启硬件加速 hardware accelerated
作者:孙志勇 微博 日期:2016年12月6日 一.时效性 所有信息都具有时效性.文章的价值,往往跟时间有很大关联.特别是技术类文章,请注意本文创建时间,如果本文过于久远,请读者酌情考量,莫要浪费时间 ...
随机推荐
- C++ MFC学习 (一)
MFC:微软基础类库,以C++形式封装了WindowsAPI,并且包含一个应用程序框架,以减少应用程序开发人员的工作量. 其中包含的类包含大量Windows句柄封装类和很多Windows的内建控 ...
- 暴风影音16 v9.05.1202.1111 绿色版
修改历史:2022.12.14:自改官方 9.05.1202.1111 最新正式版本2022.06.27:自改官方 9.04.1029.1111 最新正式版本...... 修改内容:by.呆彤儿 / ...
- 关于el-popover的箭头颜色
因为会从四个方向不定弹出 所以需要写入4个方向: 注意弹出框是动态插入body中的,需写入根部样式中 如果有多个地方用到且颜色都不一样,可以用类名区分,elm提供了 然后把前面的 .el-popper ...
- CVE-2013-2566 SSL/TLS RC4 信息泄露漏洞 修复方案
详细描述 安全套接层(Secure Sockets Layer,SSL),一种安全协议,是网景公司(Netscape)在推出Web浏览器首版的同时提出的,目的是为网络通信提供安全及数据完整性.SSL在 ...
- leecode72. 编辑距离
72. 编辑距离 给你两个单词 word1 和 word2, 请返回将 word1 转换成 word2 所使用的最少操作数 . 你可以对一个单词进行如下三种操作: 插入一个字符 删除一个字符 替换一个 ...
- 修改jar包内容
列举jar包内容 # 列举jar包所有文件 jar tvf test.jar 从jar包中提取文件 # 从test.jar中提取test.jar/test.txt到test.txt jar xvf t ...
- windows10本地联调zk环境报异常SASL config status: Will not attempt to authenticate using SASL (unknown error)
感谢原文:https://blog.csdn.net/qq_43639296/article/details/123282280 SASL config status: Will not attemp ...
- 数据表主键设置自增后插入数据的mabatis写法
研究出两种写法,因为画蛇添足修改了好久. 下面写两种正确的. <insert id="Insert" parameterType="com.aged.www.Poj ...
- centos8使用kubeadm搭建高可用k8s集群
kubeadm是官方社区推出的一个用于快速部署kubernetes集群的工具. 这个工具能通过两条指令完成一个kubernetes集群的部署: # 创建一个 Master 节点 kubeadm ini ...
- JAVA学习笔记-09
多线程: 进程:就是正在执行中的程序,每一个进程执行都有一个执行的顺序,该顺序是一个执行路径.或者叫一个控制单元. 线程:就是进程中的一个独立的控制单元,线程在控制着进程的执行 一个进程中至少有一个线 ...