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中在数据库中保存Checkbox数据(2)
Oct 09 PHP
BBS(php & mysql)完整版(七)
Oct 09 PHP
解决phpmyadmin 乱码,支持gb2312和utf-8
Nov 20 PHP
php实现的在线人员函数库
Apr 09 PHP
PHP操作mysql函数详解,mysql和php交互函数
May 19 PHP
使用PHPMailer实现邮件发送代码分享
Oct 23 PHP
PHP+HTML+JavaScript+Css实现简单爬虫开发
Mar 28 PHP
PHP中串行化用法示例
Nov 16 PHP
php实现微信企业号支付个人的方法详解
Jul 26 PHP
Laravel5.1框架注册中间件的三种场景详解
Jul 09 PHP
php5对象复制、clone、浅复制与深复制实例详解
Aug 14 PHP
php libevent 功能与使用方法详解
Mar 04 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
UCenter 批量添加用户的php代码
2012/07/17 PHP
YII2 实现多语言配置的方法分享
2017/01/11 PHP
Yii框架中用response保存cookie,用request读取cookie的原理解析
2019/09/04 PHP
laravel高级的Join语法详解以及使用Join多个条件
2019/10/16 PHP
IE 条件注释详解总结(附实例代码)
2009/08/29 Javascript
javascript代码编写需要注意的7个小细节小结
2011/09/21 Javascript
jquery中dom操作和事件的实例学习-表单验证
2011/11/30 Javascript
jQuery获取样式中的背景颜色属性值/颜色值
2012/12/17 Javascript
JS+CSS实现简易的滑动门效果代码
2015/09/24 Javascript
学习AngularJs:Directive指令用法(完整版)
2016/04/26 Javascript
Javascript实现图片加载从模糊到清晰显示的方法
2016/06/21 Javascript
基于JavaScript实现单选框下拉菜单添加文件效果
2016/06/26 Javascript
jQuery中的100个技巧汇总
2016/12/15 Javascript
使用Xcache缓存器加速PHP网站的配置方法
2017/04/22 Javascript
老生常谈js数据类型
2017/08/03 Javascript
微信小程序的日期选择器的实例详解
2017/09/29 Javascript
详解vue项目首页加载速度优化
2017/10/18 Javascript
vue.js实现只弹一次弹框
2018/01/29 Javascript
vue+element实现批量删除功能的示例
2018/02/28 Javascript
详解多页应用 Webpack4 配置优化与踩坑记录
2018/10/16 Javascript
nodejs微信开发之自动回复的实现
2019/03/17 NodeJs
深入浅析ng-bootstrap 组件集中 tabset 组件的实现分析
2019/07/19 Javascript
JavaScript文档加载模式以及元素获取
2020/07/28 Javascript
vue项目接口管理,所有接口都在apis文件夹中统一管理操作
2020/08/13 Javascript
[13:55]Newbee vs Team Spirit
2018/06/07 DOTA
Python中多线程thread与threading的实现方法
2014/08/18 Python
python模块导入的方法
2019/10/24 Python
软件配置管理有什么好处
2015/04/15 面试题
公务员总结性个人自我评价
2013/12/05 职场文书
参观监狱心得体会
2014/01/02 职场文书
安全环保标语
2014/06/09 职场文书
优秀班主任材料
2014/12/16 职场文书
市级三好生竞选稿
2015/11/21 职场文书
zabbix agent2 监控oracle数据库的方法
2021/05/13 Oracle
CSS中妙用 drop-shadow 实现线条光影效果
2021/11/11 HTML / CSS
python开发制作好看的时钟效果
2022/05/02 Python