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实现登陆验证码(类似条行码状)
Oct 09 PHP
IIS环境下快速安装、配置和调试PHP5.2.0
Dec 17 PHP
PHP set_time_limit(0)长连接的实现分析
Mar 02 PHP
php array的学习笔记
May 16 PHP
PHP通过session id 实现session共享和登录验证的代码
Jun 03 PHP
php检测useragent版本示例
Mar 24 PHP
ThinkPHP3.1新特性之多数据库操作更加完善
Jun 19 PHP
twig模板常用语句实例小结
Feb 04 PHP
PHP url的pathinfo模式加载不同控制器的简单实现
Aug 12 PHP
PHP实现路由映射到指定控制器
Aug 13 PHP
PHP使用PDO访问oracle数据库的步骤详解
Sep 29 PHP
网站被恶意镜像怎么办 php一段代码轻松搞定(全面版)
Oct 23 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
php设计模式  Command(命令模式)
2011/06/17 PHP
深入PHP与浏览器缓存的分析
2013/06/03 PHP
解析如何修改phpmyadmin中的默认登陆超时时间
2013/06/25 PHP
php导入csv文件碰到乱码问题的解决方法
2014/02/10 PHP
php图像处理类实例
2015/07/28 PHP
php简单实现批量上传图片的方法
2016/05/09 PHP
PHP的imageTtfText()函数深入详解
2021/03/03 PHP
传智播客学习之java 反射
2009/11/22 Javascript
jquery蒙版控件实现代码
2010/12/08 Javascript
JavaScript 原型继承之构造函数继承
2011/08/26 Javascript
jquery 模板的应用示例
2013/11/12 Javascript
JavaScript中setMonth()方法的使用详解
2015/06/11 Javascript
浅谈jQuery中setInterval()方法
2015/07/07 Javascript
JavaScript匿名函数之模仿块级作用域
2015/12/12 Javascript
Javascript的比较汇总
2016/07/25 Javascript
Vuejs第十三篇之组件——杂项
2016/09/09 Javascript
JS实现最简单的冒泡排序算法
2017/02/15 Javascript
jquery+ajax实现省市区三级联动 (封装和不封装两种方式)
2017/05/15 jQuery
浅谈React高阶组件
2018/03/28 Javascript
webpack4 SCSS提取和懒加载的示例
2018/09/03 Javascript
详细分析Node.js 模块系统
2020/06/28 Javascript
vue实现打地鼠小游戏
2020/08/21 Javascript
Python实现约瑟夫环问题的方法
2016/05/03 Python
python实现多线程的方式及多条命令并发执行
2016/06/07 Python
python 设置文件编码格式的实现方法
2017/12/21 Python
Python操作redis实例小结【String、Hash、List、Set等】
2019/05/16 Python
python批量图片处理简单示例
2019/08/06 Python
Python调用JavaScript代码的方法
2020/10/27 Python
详解CSS3中@media的实际使用
2015/08/04 HTML / CSS
亿阳信通股份有限公司笔试题(C#)
2016/03/04 面试题
自查自纠工作情况报告
2014/10/29 职场文书
2014年小学安全工作总结
2014/12/04 职场文书
赤壁观后感(2)
2015/06/15 职场文书
Python超简单容易上手的画图工具库推荐
2021/05/10 Python
十大最强飞行系宝可梦,BUG燕上榜,第二是飞行系王者
2022/03/18 日漫
vue实现简易音乐播放器
2022/08/14 Vue.js