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)
___________________________________________________________

  1. [root@Web_server src]# wget http://xcache.lighttpd.net/pub/Releases/3.2.0/xcache-3.2.0.tar.bz2
  2. [root@Web_server src]# tar xf xcache-3.2.0.tar.bz2
  3. [root@Web_server src]# cd xcache-3.2.0
  4. [root@Web_server xcache-3.2.0]# /usr/local/php/bin/phpize
  5. [root@Web_server xcache-3.2.0]# ./configure --enable-xcache --with-php-config=/usr/local/php/bin/php-config  
  6. [root@Web_server xcache-3.2.0]# make && make install
  7. [root@Web_server xcache-3.2.0]# ll /usr/local/php/lib/php/extensions/no-debug-non-zts-20121212/
  8. total 2208
  9. -rwxr-xr-x 1 root root 1021684 Apr 13 10:33 opcache.a
  10. -rwxr-xr-x 1 root root  538161 Apr 13 10:33 opcache.so
  11. -rwxr-xr-x 1 root root  692628 Apr 18 09:44 xcache.so      #<==生成xcache.so模块
  12.  
  13. [root@Web_server xcache-3.2.0]# cat /usr/local/src/xcache-3.2.0/xcache.ini >> /usr/local/php/etc/php.ini
  14. [root@Web_server xcache-3.2.0]# tail -85 /usr/local/php/etc/php.ini | egrep -v "^;|^$"
  15. [xcache-common]
  16. extension = xcache.so
  17. [xcache.admin]
  18. xcache.admin.enable_auth = On
  19. xcache.admin.user = "mOo"
  20. xcache.admin.pass = "md5 encrypted password"
  21. [xcache]
  22. xcache.shm_scheme =        "mmap"
  23. xcache.size  =               256M
  24. xcache.count =                 2
  25. xcache.slots =                8K
  26. xcache.ttl   =                 86400
  27. xcache.gc_interval =          3600
  28. xcache.var_size  =            64M

#更改标红参数,生产环境根据硬件和业务数据来调整

  1. [root@Web_server xcache-3.2.0]# /usr/local/php/bin/php -v    #检查配置
  2. PHP 5.5.31 (cli) (built: Apr 13 2016 10:29:58)
  3. Copyright (c) 1997-2015 The PHP Group
  4. Zend Engine v2.5.0, Copyright (c) 1998-2015 Zend Technologies
  5. with XCache v3.2.0, Copyright (c) 2005-2014, by mOo
  6. with XCache Cacher v3.2.0, Copyright (c) 2005-2014, by mOo
  7.  
  8. [root@Web_server ~]# echo -n "szk" |md5sum
  9. [root@Web_server ~]# vim /usr/local/php/etc/php.ini   #配置xcache用户密码
  10. xcache.admin.user = "szk"
  11. xcache.admin.pass = "005eff7dd9626f0c30f2eb8003ceafc9"
  12. [root@Web_server ~]# cp -a /usr/local/src/xcache-3.2.0/htdocs/ /data/www/xadmin
  13. [root@Web_server ~]# chown -R nobody.nobody /data/www/xadmin
  14. [root@Web_server ~]# /etc/init.d/php-fpm start

■ 缓存加速插件安装配置(OPcache)
___________________________________________________________
#若5.5版本,会自动安装opcache插件,编译时--enable=opcache启用

  1. [root@Web_server ~]#  ll /usr/local/php/lib/php/extensions/no-debug-non-zts-20121212/  
  2. -rwxr-xr-x 1 root root  538161 Apr 13 10:33 opcache.so
  3. [root@Web_server ~]# vim /usr/local/php/etc/php.ini  #若编译没有启用,则在配置文件中添加下面内容即可
  4. zend_extension=opcache.so
  5. [opcache]
  6. opcache.memory_consumption=128
  7. opcache.interned_strings_buffer=8
  8. opcache.max_accelerated_files=4000
  9. opcache.revalidate_freq=60
  10. opcache.fast_shutdown=1
  11. opcache.enable=1
  12. opcache.enable_cli=1
  13. [root@Web_server ~]# /usr/local/php/bin/php -v
  14. PHP 5.5.31 (cli) (built: Apr 13 2016 10:29:58) 
  15. Copyright (c) 1997-2015 The PHP Group
  16. Zend Engine v2.5.0, Copyright (c) 1998-2015 Zend Technologies
  17. with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2015, by Zend Technologies

PHP开启缓存加速的更多相关文章

  1. 怎么看网站是否开启CDN加速?测试网站全国访问速度方法详解

    注意域名,动静分离的网站,只对静态文件的域名做了cdn 怎么看网站有没开启CDN? 要看一个网站是否开启CDN,方法很简单,只要在不同的地区ping网址就可以,比如在山东济南ping www.jb51 ...

  2. 12秒开机!ExpressCache SSD缓存加速

    SSD固态硬盘的读写速度比传统硬盘快了很多,读取速度能到300M/s 写入速度大约在80M/S 但SSD硬盘的价格也笔记机械硬盘高了很多,128G的固态硬盘淘宝价大概在800左右,想想现在随便一个软件 ...

  3. PHP7安装Memcache+Memcached缓存加速WordPress教程

    PHP7安装Memcache+Memcached缓存加速WordPress教程 2016年1月19日 6,691 Views 生活方式 PHP7最显著的变化就是性能的极大提升,已接近Facebook开 ...

  4. 用CSS开启硬件加速来提高网站性能

    国外一篇文章,有点意思,转载过来,准备尝试下~ 中文地址:http://www.cnblogs.com/rubylouvre/p/3471490.html 原文地址:http://blog.teamt ...

  5. 使用tmpfs作为缓存加速缓存的文件目录

    使用tmpfs作为缓存加速缓存的文件目录 [root@web02 ~]# mount -t tmpfs tmpfs /dev/shm -o size=256m[root@web02 ~]# mount ...

  6. 开启gpu加速的高性能移动端相框组件!

    通过设置新的css3新属性translateX来代替传统的绝对定位改变left值的动画原理,新属性translateX会开启浏览器自带的gpu硬件加速动画性能,提高流畅度从而提高用户体验, 代码有很详 ...

  7. ubuntu 15 安装cuda,开启GPU加速

    1 首先要开启GPU加速就要安装cuda.安装cuda,首先要安装英伟达的驱动.ubuntu有自带的开源驱动,首先要禁用nouveau.这儿要注意,虚拟机不能安装ubuntu驱动.VMWare下显卡只 ...

  8. 用CSS开启硬件加速来提高网站性能(转)

    翻译文章,原文地址:http://blog.teamtreehouse.com/increase-your-sites-performance-with-hardware-accelerated-cs ...

  9. Nginx使用Expires增加浏览器缓存加速(转)

    转载自:Nginx使用Expires增加浏览器缓存加速 Nginx可以更改HTTP头部,这个是Web服务器必须的,当然Nginx更可以支持在HTTP头部中添加Expires等相关信息,增强浏览器缓存, ...

  10. CSS开启硬件加速 hardware accelerated

    作者:孙志勇 微博 日期:2016年12月6日 一.时效性 所有信息都具有时效性.文章的价值,往往跟时间有很大关联.特别是技术类文章,请注意本文创建时间,如果本文过于久远,请读者酌情考量,莫要浪费时间 ...

随机推荐

  1. CSS:布局篇_两边顶宽中间自适应(圣杯布局&双飞翼布局)

    CSS:布局篇_两边顶宽中间自适应(圣杯布局&双飞翼布局) 圣杯布局以及双飞翼布局解决的是两边顶宽中间自适应的三栏布局,且中间栏优先渲染. 圣杯布局实现思路: 用一个div作为容器依次包住中, ...

  2. window.location.href 用法总结

    想做好前端,这几种用法一定要了解: 在做网页前端的时候会经常用到JavaScript其中window.location.href用得非常多: 其中最常用的有windows.location.href= ...

  3. Oracle常用的日期操作函数 to_char()和to_date

    https://www.cnblogs.com/zhangliang88/p/12924407.html

  4. 打开Access时电脑出现蓝屏,错误编号0x00000116的问题解决

    Windows7 64位旗舰版,在打开Access 2013,Onenote 2013时均会出现蓝屏,现就出现蓝屏问题解决方法给大家做一个分享. 步骤: 1.右击我的电脑,打开设备管理器 2.按顺序1 ...

  5. python经典例题

    [程序1] 题目:有1.2.3.4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少? num_list=[] cou=0 for i in range(1,5): for j in rang ...

  6. 在springboot使用jsp

    在springboot配置jsp环境 在pom.xml中添加配置依赖 内容如下: <dependency> <groupId>org.springframework.boot& ...

  7. XMACL

    访问控制策略描述语言 模型 组合算法(解决策略冲突):拒绝优先算法.许可优先算法.首先应用算法.唯一应用算法 目标(资源.主体.动作.环境)+效用(Permit/Deny)+条件 (结果是True/F ...

  8. python菜鸟学习 : 16 pymongo和openpyxl的联合使用

    # -*- coding: utf-8 -*-import pymongo, openpyxl, time# pymongo#条件删选mongodb数据def mongodb_expoter(db_n ...

  9. 云函数调用云函数 openid不存在

    最近发现了一个问题 就是我使用云函数调用云函数的时候,将openid存入数据库发现为空,怎么回事呢,一查, 原来是这样 还是没有仔细看文档的错啊

  10. 光盘实现半自动化安装linux以及PXE实现自动安装

    重点 实验一:使用 kickstart 半自动化安装CentOS系统 可以将定制安装光盘,并结合kickstart实现基于光盘启动的半自动化安装 实现过程  首先下载httpd搭建个web网页 [ro ...