如何深入理解opcache、apc、xcache、eAccelerator等PHP加速缓存器的原理与改写?

2026-04-01 08:541阅读0评论SEO资讯
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计1074个文字,预计阅读时间需要5分钟。

如何深入理解opcache、apc、xcache、eAccelerator等PHP加速缓存器的原理与改写?

本文介绍了PHP加速缓存器OPCache、APC、XCache和eAccelerator的原理与配置方法,供大家参考。

一、OPCacheOPCache通过将PHP脚本编译后的字节码缓存到共享内存中来加速PHP的执行。它减少了重复编译脚本的开销,从而提高网站性能。

配置方法:

1.确保服务器已安装OPCache扩展。

2.编辑PHP配置文件(如php.ini),添加以下配置:

opcache.enable=1 opcache.enable_cli=1 opcache.max_accelerated_files=10000 opcache.revalidate_freq=2 opcache.save_comments=1

3.重启Web服务器。

二、APC

APC(Alternative PHP Cache)是一个开源的PHP加速器,它缓存PHP脚本和编译后的字节码。

配置方法:

1.安装APC扩展。

2.编辑PHP配置文件(如php.ini),添加以下配置:

apc.enabled=1 apc.shm_size=128M apc.num_files_hint=10000 apc.optimization=7

3.重启Web服务器。

三、XCache

XCache是一个高性能、可扩展的PHP缓存器,它可以缓存PHP脚本和编译后的字节码。

配置方法:

1.安装XCache扩展。

2.编辑PHP配置文件(如php.ini),添加以下配置:

xcache.shm_size=128M xcache.size=128M xcache.count=100

3.重启Web服务器。

四、eAccelerator

eAccelerator是一个开源的PHP加速器,它可以缓存PHP脚本和编译后的字节码。

配置方法:

1.安装eAccelerator扩展。

2.编辑PHP配置文件(如php.ini),添加以下配置:

eAccelerator.enable=1 eAccelerator.shm_size=128M eAccelerator.cache_dir=/path/to/eaccelerator

3.重启Web服务器。

通过以上方法,您可以为您的PHP应用程序配置合适的缓存器,提高网站性能。

本文实例讲述了php加速缓存器opcache,apc,xcache,eAccelerator原理与配置方法。分享给大家供大家参考,具体如下:

一、opcache

opcache 通过将 PHP 脚本预编译的字节码存储到共享内存中来提升 PHP 的性能, 存储预编译字节码的好处就是 省去了每次加载和解析 PHP 脚本的开销。

PHP 5.5.0 及后续版本中已经绑定了 opcache 扩展。 对于 PHP 5.2,5.3 和 5.4 版本可以使用PECL扩展中的 opcache 库。

windows下的php扩展下载地址:

windows.php.net/downloads/pecl/releases/

打开php.ini文件,找到[opcache]

; dll地址 extension=php_opcache.dll ; 开关打开 opcache.enable=1 ; 开启CLI opcache.enable_cli=1 ; 可用内存, 酌情而定, 单位为:Mb opcache.memory_consumption=128 ; Zend Optimizer + 暂存池中字符串的占内存总量.(单位:MB) opcache.interned_strings_buffer=8 ; 对多缓存文件限制, 命中率不到 100% 的话, 可以试着提高这个值 opcache.max_accelerated_files=10000 ; opcache 会在一定时间内去检查文件的修改时间, 这里设置检查的时间周期, 默认为 2, (单位:秒) opcache.revalidate_freq=1 ; 打开快速关闭, 打开这个在PHP Request Shutdown的时候回收内存的速度会提高 opcache.fast_shutdown=1

二、APC

Alternative PHP Cache (APC) 是一个开放自由的PHP opcode 缓存。它的目标是提供一个自由、 开放,和健全的框架用于缓存和优化PHP的中间代码。

下载apc扩展dll,选择你对应的PHP版本

windows.php.net/downloads/pecl/releases/apc/

把下载的php_apc.dll放入php的ext扩展目录下。

打开php.ini文件,配置如下:

[apc] extension=php_apc.dll apc.enabled=1 ; 共享内存块的数目 apc.shm_segments=1 ; 共享内存块的大小(单位:MB) apc.shm_size=64 ; 优化级别,更高的值则使用更主动的优化 apc.optimization=1 ; 源文件的数目,不确定设置为0 apc.num_files_hint=0 ; 缓存条目在缓冲区中允许逗留的秒数 apc.ttl=7200 ; 针对每个用户缓存条目在缓冲区中允许逗留的秒数 apc.user_ttl=7200 ; 缓存条目在垃圾回收表中能够存在的秒数 apc.gc_ttl=7200 ; 文件写锁 apc.write_lock=on

三、xcache

xcache是一个开源的 opcode 缓存器/优化器。

下载xcache,选择对应PHP版本的xcache

如何深入理解opcache、apc、xcache、eAccelerator等PHP加速缓存器的原理与改写?

xcache.ligwww.sitebuddy.com/PHP/Accelerators/eAccelerator_windows_binaries_builds

把下载到的eAccelerator_ts.dll放到php的ext目录下。
打开php.ini,配置如下:

[eAccelerator] extension="eAccelerator_ts.dll" eaccelerator.shm_size="16" eaccelerator.cache_dir="设置缓存目录" eaccelerator.enable="1" eaccelerator.optimizer="1" eaccelerator.check_mtime="1" eaccelerator.debug="0" eaccelerator.log_file = "设置日志文件" eaccelerator.filter="" eaccelerator.shm_max="0" eaccelerator.shm_ttl="0" eaccelerator.shm_prune_period="0" eaccelerator.shm_only="0" eaccelerator.compress="1" eaccelerator.compress_level="9"

更多关于PHP相关内容感兴趣的读者可查看本站专题:《php缓存技术总结》、《php面向对象程序设计入门教程》、《PHP基本语法入门教程》、《PHP数组(Array)操作技巧大全》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

希望本文所述对大家PHP程序设计有所帮助。

本文共计1074个文字,预计阅读时间需要5分钟。

如何深入理解opcache、apc、xcache、eAccelerator等PHP加速缓存器的原理与改写?

本文介绍了PHP加速缓存器OPCache、APC、XCache和eAccelerator的原理与配置方法,供大家参考。

一、OPCacheOPCache通过将PHP脚本编译后的字节码缓存到共享内存中来加速PHP的执行。它减少了重复编译脚本的开销,从而提高网站性能。

配置方法:

1.确保服务器已安装OPCache扩展。

2.编辑PHP配置文件(如php.ini),添加以下配置:

opcache.enable=1 opcache.enable_cli=1 opcache.max_accelerated_files=10000 opcache.revalidate_freq=2 opcache.save_comments=1

3.重启Web服务器。

二、APC

APC(Alternative PHP Cache)是一个开源的PHP加速器,它缓存PHP脚本和编译后的字节码。

配置方法:

1.安装APC扩展。

2.编辑PHP配置文件(如php.ini),添加以下配置:

apc.enabled=1 apc.shm_size=128M apc.num_files_hint=10000 apc.optimization=7

3.重启Web服务器。

三、XCache

XCache是一个高性能、可扩展的PHP缓存器,它可以缓存PHP脚本和编译后的字节码。

配置方法:

1.安装XCache扩展。

2.编辑PHP配置文件(如php.ini),添加以下配置:

xcache.shm_size=128M xcache.size=128M xcache.count=100

3.重启Web服务器。

四、eAccelerator

eAccelerator是一个开源的PHP加速器,它可以缓存PHP脚本和编译后的字节码。

配置方法:

1.安装eAccelerator扩展。

2.编辑PHP配置文件(如php.ini),添加以下配置:

eAccelerator.enable=1 eAccelerator.shm_size=128M eAccelerator.cache_dir=/path/to/eaccelerator

3.重启Web服务器。

通过以上方法,您可以为您的PHP应用程序配置合适的缓存器,提高网站性能。

本文实例讲述了php加速缓存器opcache,apc,xcache,eAccelerator原理与配置方法。分享给大家供大家参考,具体如下:

一、opcache

opcache 通过将 PHP 脚本预编译的字节码存储到共享内存中来提升 PHP 的性能, 存储预编译字节码的好处就是 省去了每次加载和解析 PHP 脚本的开销。

PHP 5.5.0 及后续版本中已经绑定了 opcache 扩展。 对于 PHP 5.2,5.3 和 5.4 版本可以使用PECL扩展中的 opcache 库。

windows下的php扩展下载地址:

windows.php.net/downloads/pecl/releases/

打开php.ini文件,找到[opcache]

; dll地址 extension=php_opcache.dll ; 开关打开 opcache.enable=1 ; 开启CLI opcache.enable_cli=1 ; 可用内存, 酌情而定, 单位为:Mb opcache.memory_consumption=128 ; Zend Optimizer + 暂存池中字符串的占内存总量.(单位:MB) opcache.interned_strings_buffer=8 ; 对多缓存文件限制, 命中率不到 100% 的话, 可以试着提高这个值 opcache.max_accelerated_files=10000 ; opcache 会在一定时间内去检查文件的修改时间, 这里设置检查的时间周期, 默认为 2, (单位:秒) opcache.revalidate_freq=1 ; 打开快速关闭, 打开这个在PHP Request Shutdown的时候回收内存的速度会提高 opcache.fast_shutdown=1

二、APC

Alternative PHP Cache (APC) 是一个开放自由的PHP opcode 缓存。它的目标是提供一个自由、 开放,和健全的框架用于缓存和优化PHP的中间代码。

下载apc扩展dll,选择你对应的PHP版本

windows.php.net/downloads/pecl/releases/apc/

把下载的php_apc.dll放入php的ext扩展目录下。

打开php.ini文件,配置如下:

[apc] extension=php_apc.dll apc.enabled=1 ; 共享内存块的数目 apc.shm_segments=1 ; 共享内存块的大小(单位:MB) apc.shm_size=64 ; 优化级别,更高的值则使用更主动的优化 apc.optimization=1 ; 源文件的数目,不确定设置为0 apc.num_files_hint=0 ; 缓存条目在缓冲区中允许逗留的秒数 apc.ttl=7200 ; 针对每个用户缓存条目在缓冲区中允许逗留的秒数 apc.user_ttl=7200 ; 缓存条目在垃圾回收表中能够存在的秒数 apc.gc_ttl=7200 ; 文件写锁 apc.write_lock=on

三、xcache

xcache是一个开源的 opcode 缓存器/优化器。

下载xcache,选择对应PHP版本的xcache

如何深入理解opcache、apc、xcache、eAccelerator等PHP加速缓存器的原理与改写?

xcache.ligwww.sitebuddy.com/PHP/Accelerators/eAccelerator_windows_binaries_builds

把下载到的eAccelerator_ts.dll放到php的ext目录下。
打开php.ini,配置如下:

[eAccelerator] extension="eAccelerator_ts.dll" eaccelerator.shm_size="16" eaccelerator.cache_dir="设置缓存目录" eaccelerator.enable="1" eaccelerator.optimizer="1" eaccelerator.check_mtime="1" eaccelerator.debug="0" eaccelerator.log_file = "设置日志文件" eaccelerator.filter="" eaccelerator.shm_max="0" eaccelerator.shm_ttl="0" eaccelerator.shm_prune_period="0" eaccelerator.shm_only="0" eaccelerator.compress="1" eaccelerator.compress_level="9"

更多关于PHP相关内容感兴趣的读者可查看本站专题:《php缓存技术总结》、《php面向对象程序设计入门教程》、《PHP基本语法入门教程》、《PHP数组(Array)操作技巧大全》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

希望本文所述对大家PHP程序设计有所帮助。