这篇文章主要介绍了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这个组合。
分享到:
相关推荐
综上所述,eAccelerator和Xcache属于PHP层面的加速扩展,主要功能是提高PHP代码的执行效率和缓存性能;而memcached和APC更偏向于数据库缓存扩展,它们通过减少数据库的访问次数来提高网站性能。在实际应用中,可以...
本文将对五种常见的PHP缓存加速器进行分析,包括Memcached、eAccelerator、APC(Alternative PHP Cache)、Xcache以及Redis,以帮助理解它们的特点和适用场景。 首先,Memcached是一个分布式内存对象缓存系统,常...
而memcached和APC更适合用作数据库缓存扩展,它们能够缓存数据和对象,减少数据库访问次数,并且对于集群环境下的分布式缓存特别有效。在实际应用中,我们通常只需要安装其中一个扩展即可,因为它们在功能上有一定的...
操作码缓存是一种优化手段,如eAccelerator、XCache、APC等。它们存储编译后的PHP操作码,下次请求时直接使用,避免了重复编译过程,降低了CPU和内存消耗。选择缓存器时,根据社区活跃度和性能测试,XCache通常被...
2、php中eAccelerator、memcached、xcache、APC 4个加速、缓存扩展的区别 参考:https://www.jb51.net/article/88281.htm xcache 是一个又快又稳定的 PHP opcode 缓存器. 经过良好的测试并在大流量/高负载的生产机器...
除了Memcached之外,还有一些PHP的缓冲器如eAccelerator、APC、XCache等,这些都是PHP的扩展,通过这些缓冲器可以进一步优化PHP代码的执行效率。例如,APC可以提供编译代码的缓存、用户数据缓存等功能,从而减少脚本...
7. PHP缓冲器(如eAccelerator、APC、phpa、XCache): 这些是PHP的opcode缓存器,它们将PHP脚本编译后的中间代码(opcode)存储在内存中,避免了每次请求时重复编译的过程,显著提升了PHP应用的运行速度。 8. ...
PHP提供了一些内置的缓存解决方案,比如APC(Alternative PHP Cache)、eAccelerator、XCache等,它们可以缓存编译后的PHP代码。此外,还可以使用文件系统或者第三方库如Memcached或Redis来存储和检索数据,实现数据...
6. **加速器**:如eAccelerator、xcache和APC等,它们优化PHP性能,通过缓存编译后的PHP代码,减少CPU资源消耗,提升网站响应速度。 7. **PEAR**:PEAR是PHP的扩展和应用程序仓库,提供了一系列已封装好的PHP类库,...
opcode缓存器如APC(Alternative PHP Cache)、eAccelerator和XCache等,能够将编译后的opcode存储在共享内存中,以便后续请求可以直接使用,而无需重新编译源代码。这大大减少了CPU的使用和内存的消耗,从而提高了...
- PHP缓存器:使用如eAccelerator、APC、XCache、Redis和Memcached等工具进行数据缓存。 七、数据库缓存 数据库自身也提供了缓存机制,如MySQL查询缓存,可以缓存SQL查询结果,加快数据库层的响应。 八、基于反向...
缓冲器如eAccelerator、APC、XCache等,它们可以缓存编译执行的PHP脚本的中间代码,减少脚本的编译开销。加速器如PHP Accelerator(phpa),能够加快PHP的执行速度。 八、服务器配置优化 服务器配置的优化也是性能...
7. PHP缓冲器:如eAccelerator、APC、PHPA和XCache,这些是PHP加速器,它们将PHP代码编译为机器码并存储在内存中,以减少解释器的开销。 8. MySQL缓存:MySQL数据库本身有查询缓存,可以存储最近执行过的SQL查询,...
8. **PHP缓冲器**:如eAccelerator、APC、phpa和XCache等,它们将PHP代码编译后的opcode缓存到内存中,避免重复编译,显著提升PHP执行效率。 9. **MySQL缓存**:MySQL内置了查询缓存,对于相同的SQL查询,可以直接...
7. PHP缓冲器:包括eaccelerator、APC、phpa和XCache等,它们将PHP代码编译为字节码并存储在内存中,避免重复编译过程,从而加速脚本执行。 8. MySQL缓存:MySQL数据库本身具有查询缓存机制,能够缓存最近的SQL查询...
数据缓存(对常用的SQL数据进行文件缓存,并支持Xcache,Apc,Apachenote,Eaccelerator,MemcacheD,Redis,Shmop,WinCache,File,Db) 后台(在线更新HYBBS,插件页,模板页,还有一些常用的数据管理就不多说的...
例如,配置APC缓存可以写成: ```php 'components' => array( 'cache' => array( 'class' => 'system.caching.CApcCache', ), ), ``` 类似地,配置memcached可以这样设置: ```php 'components' => array...