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 文件扩展名 获取函数
Jun 03 PHP
PHP 批量更新网页内容实现代码
Jan 05 PHP
PHP通过session id 实现session共享和登录验证的代码
Jun 03 PHP
深入了解PHP类Class的概念
Jun 14 PHP
深入file_get_contents函数抓取内容失败的原因分析
Jun 25 PHP
五款PHP代码重构工具推荐
Oct 14 PHP
php中使用session_set_save_handler()函数把session保存到MySQL数据库实例
Nov 06 PHP
ThinkPHP中redirect用法分析
Dec 05 PHP
php中Snoopy类用法实例
Jun 19 PHP
PHP多维数组遍历方法(2种实现方法)
Dec 10 PHP
PHP yield关键字功能与用法分析
Jan 03 PHP
Laravel Eloquent分表方法并使用模型关联的实现
Nov 25 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 字符串操作入门教程
2006/12/06 PHP
php 删除数组元素
2009/01/16 PHP
PHP 简单数组排序实现代码
2009/08/05 PHP
php 文件上传类代码
2011/08/06 PHP
PHP登录验证功能示例【用户名、密码、验证码、数据库、已登陆验证、自动登录和注销登录等】
2019/02/25 PHP
javascript操作cookie_获取与修改代码
2009/05/21 Javascript
js类的静态属性和实例属性的理解
2009/10/01 Javascript
JQuery select控件的相关操作实现代码
2012/09/14 Javascript
如何使用jQuery来处理图片坏链具体实现步骤
2013/05/02 Javascript
JavaScript函数的4种调用方法详解
2014/04/22 Javascript
Javascript 中创建自定义对象的方法汇总
2014/12/04 Javascript
轻松实现jquery手风琴效果
2016/01/14 Javascript
很实用的js选项卡切换效果
2016/08/12 Javascript
vue实现多级菜单效果
2019/10/19 Javascript
使用Vue-scroller页面input框不能触发滑动的问题及解决方法
2020/08/08 Javascript
vue select 获取value和lable操作
2020/08/28 Javascript
[01:07:20]DOTA2-DPC中国联赛 正赛 Dynasty vs XG BO3 第二场 2月2日
2021/03/11 DOTA
[01:16:28]DOTA2-DPC中国联赛 正赛 iG vs Magma BO3 第二场 2月23日
2021/03/11 DOTA
Python实现对一个函数应用多个装饰器的方法示例
2018/02/09 Python
使用Python开发SQLite代理服务器的方法
2018/12/07 Python
ERLANG和PYTHON互通实现过程详解
2019/07/05 Python
学习Django知识点分享
2019/09/11 Python
解决python虚拟环境切换无效的问题
2020/04/30 Python
Python中Selenium模块的使用详解
2020/10/09 Python
python中watchdog文件监控与检测上传功能
2020/10/30 Python
澳大利亚音乐商店:Bava’s Music City
2019/05/05 全球购物
什么是Rollback Segment
2013/04/22 面试题
技术总监岗位职责
2013/12/05 职场文书
工厂车间标语
2014/06/19 职场文书
企业领导班子四风对照检查材料
2014/09/27 职场文书
买房子个人收入证明
2014/10/12 职场文书
2014年社区个人工作总结
2014/12/02 职场文书
实习介绍信模板
2015/01/30 职场文书
布达拉宫的导游词
2015/02/02 职场文书
居安思危观后感
2015/06/11 职场文书
Vue3.0中Ref与Reactive的区别示例详析
2021/07/07 Vue.js