PHP中加速、缓存扩展的区别和作用详解(eAccelerator、memcached、xcache、APC )


Posted in PHP onJuly 09, 2016

PHP中有eAccelerator、memcached、xcache、APC 4个加速、缓存扩展,下面给大家介绍下其区别,一起看看吧!

折腾VPS的朋友,在安装好LNMP等Web运行环境后都会选择一些缓存扩展安装以提高PHP运行速度,常被人介绍的有 eAccelerator、memcached、xcache、Alternative PHP Cache这几个缓存扩展,它们之间有什么区别?分别的作用又是什么?我们如何选择?这是本文给于大家的答案。

1、eAccelerator

eAccelerator是一个自由开放源码PHP加速器,优化和动态内容缓存,提高了PHP脚本的缓存性能,使得PHP脚本在编译的状态下,对服务器的开销几乎完全消除。 它还有对脚本起优化作用,以加快其执行效率。使PHP程序代码执效率能提高1-10倍。从文字上可以理解为:eAccelerator是PHP加速器扩展。

2、memcached

Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提供动态、数据库驱动网站的速度。从文字上可以理解为:内存缓存扩展,并且针对于集群服务器使用较多,主要用于分布式缓存,算是数据库缓存。

3、Alternative PHP Cache(APC缓存)

Alternative PHP Cache (APC缓存)是一种对PHP有效的开放源高速缓冲储存器工具,他能够缓存Opcode(目标文件)的PHP中间码。 APC的缓存分两部分:系统缓存和用户数据缓存. 系统缓存 是自动使用的,是指APC把PHP文件源码的编译结果缓存起来,然后在再次调用时先对比时间标记。如果未过期,则使用缓存代码运行。默认缓存 3600s(一小时).但是这样仍会浪费大量CPU时间.因此可以在php.ini中设置system缓存为永不过期(apc.ttl=0).不过如果这样设置,改运PHP代码后需要restart一下您的web服务器(比如apache…).目前对APC的性能测试一般指的是这一层cache;从文字上理到:Alternative PHP Cache(APC缓存)也算是一种内存缓存扩展,算是数据库缓存扩展。

  4、Xcache

是一个开源的opcode缓存器/优化器, 他能够提高服务器上的PHP性能,他通过把编译PHP后的数据缓冲到共享内存从而避免重复的编译过程, 能够直接使用缓冲区已编译的代码从而提高速度. 通常能够提高您的页面生成速率2到5倍, 降低服务器负载。 其实它与eAccelerator一样是PHP加速器扩展。

以上就是他们的作用与区别,简单一点就是:eAccelerator,xcache是PHP缓存扩展,memcached、APC缓存是数据库缓存扩展,一般两者只有要安装其中一个即可,不要贪多。另外,实际测试中发现当Cache数量超过一定阀值的时候,APC的性能不如Memcache。所以在扩展的选择上,本人一般会选择xcache+memcached这个组合。

以上所述是小编给大家介绍的PHP中加速、缓存扩展的区别和作用详解(eAccelerator、memcached、xcache、APC )的全部叙述,希望对大家有所帮助,如果大家想了解更多内容敬请关注三水点靠木网站!

PHP 相关文章推荐
新版PHP将向Java靠拢
Oct 09 PHP
php数组函数序列之next() - 移动数组内部指针到下一个元素的位置,并返回该元素值
Oct 31 PHP
PHP中Session引起的脚本阻塞问题解决办法
Apr 08 PHP
php制作文本式留言板
Mar 18 PHP
PHP 获取ip地址代码汇总
Jul 05 PHP
百度地图经纬度转换到腾讯地图/Google 对应的经纬度
Aug 28 PHP
详解WordPress中用于合成数组的wp_parse_args()函数
Dec 18 PHP
PHP编写daemon process详解及实例代码
Sep 30 PHP
PHP4和PHP5版本下解析XML文档的操作方法实例分析
May 20 PHP
使用PHP+MySql实现微信投票功能实例代码
Sep 29 PHP
PHP常用工具函数小结【移除XSS攻击、UTF8与GBK编码转换等】
Apr 27 PHP
Laravel 类和接口注入相关的代码
Oct 15 PHP
Centos PHP 扩展Xchche的安装教程
Jul 09 #PHP
PHP编程之设置apache虚拟目录
Jul 08 #PHP
php实现学生管理系统
Mar 21 #PHP
php实现批量删除挂马文件及批量替换页面内容完整实例
Jul 08 #PHP
PHP线程的内存回收问题
Jul 08 #PHP
php实现xml与json之间的相互转换功能实例
Jul 07 #PHP
PHP登录验证码的实现与使用方法
Jul 07 #PHP
You might like
短波收音机简介
2021/03/01 无线电
一个简单实现多条件查询的例子
2006/10/09 PHP
将一维或多维的数组连接成一个字符串的php代码
2010/08/08 PHP
php采用file_get_contents代替使用curl实例
2014/11/07 PHP
php检查日期函数checkdate用法实例
2015/03/19 PHP
基于jquery实现后台左侧菜单点击上下滑动显示
2013/04/11 Javascript
ajax与302响应代码测试
2013/10/23 Javascript
js获取 type=radio 值的方法
2014/05/09 Javascript
javascript实现了照片拖拽点击置顶的照片墙代码
2015/04/03 Javascript
javascript实现根据3原色制作颜色选择器的方法
2015/07/17 Javascript
jQuery基于ajax实现带动画效果无刷新柱状图投票代码
2015/08/10 Javascript
JS基于myFocus库实现各种功能的tab选项卡切换效果
2015/09/19 Javascript
基于jQuery实现多层次的手风琴效果附源码
2015/09/21 Javascript
JS定时器用法分析【时钟与菜单中的应用】
2016/12/21 Javascript
Bootstrap源码解读媒体对象、列表组和面板(10)
2016/12/26 Javascript
Angular下H5上传图片的方法(可多张上传)
2017/01/09 Javascript
jQuery图片瀑布流的简单实现代码
2017/03/15 Javascript
深入理解Webpack 中路径的配置
2017/06/17 Javascript
Vue自定义过滤器格式化数字三位加一逗号实现代码
2018/03/23 Javascript
小程序云开发部署攻略(图文教程)
2018/10/30 Javascript
JavaScript中的this基本问题实例小结
2020/03/09 Javascript
微信小程序自定义yPicker组件实现省市区三级联动功能
2020/10/29 Javascript
Vue指令实现OutClick的示例
2020/11/16 Javascript
[01:38:19]夜魇凡尔赛茶话会 第五期
2021/03/11 DOTA
python使用装饰器和线程限制函数执行时间的方法
2015/04/18 Python
python中字符串内置函数的用法总结
2018/09/13 Python
解决pyinstaller打包pyqt5的问题
2019/01/08 Python
python里 super类的工作原理详解
2019/06/19 Python
python 生成器需注意的小问题
2020/09/29 Python
解决CSS3的opacity属性带来的层叠顺序问题
2016/05/09 HTML / CSS
优秀公益广告词大全
2014/03/19 职场文书
法人任命书范本
2014/06/04 职场文书
传承焦裕禄精神思想汇报2014
2014/09/10 职场文书
2014全年工作总结
2014/11/27 职场文书
立案决定书范文
2015/06/24 职场文书
解决goland 导入项目后import里的包报红问题
2021/05/06 Golang