当前位置:首页 > PHP教程 > php环境安装 > 列表

php加速缓存器opcache,apc,xcache,eAccelerator原理与配置方法实例分析

发布:smiling 来源: PHP粉丝网  添加日期:2022-02-17 11:17:07 浏览: 评论:0 

本文实例讲述了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扩展下载地址:

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

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

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

二、APC

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

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

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

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

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

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

三、xcache

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

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

http://xcache.lighttpd.net/pub/Releases/

把php_xcache.dll放到php的ext目录下。

打开php.ini,配置如下:

  1. [xcache-common] 
  2. extension = php_xcache.dll 
  3. [xcache.admin] 
  4. xcache.admin.enable_auth = On 
  5. xcache.admin.user = "admin" 
  6. xcache.admin.pass = "md5后你的密码" 
  7. [xcache] 
  8. ; 选择底层内存共享实现方案 
  9. xcache.shm_scheme = "mmap" 
  10. xcache.size = 128M 
  11. ; 设置为CPU数 
  12. xcache.count = 1 
  13. ; 只是个参考值 
  14. xcache.slots = 8K 
  15. ; 缓存时间 
  16. xcache.ttl = 1200 
  17. ; 垃圾回收的时间间隔 
  18. xcache.gc_interval = 1200 
  19. ; 同上,针对变量缓存设置 
  20. xcache.var_size = 4M 
  21. xcache.var_count = 1 
  22. xcache.var_slots = 8K 
  23. xcache.var_ttl = 1200 
  24.    
  25. ; 变量最大缓存时间 
  26. xcache.var_maxttl = 7200 
  27. xcache.var_gc_interval = 1200 
  28. xcache.var_namespace_mode = 0 
  29. xcache.var_namespace = "" 
  30. xcache.readonly_protection = Off 
  31. ; 对于win系统,这里不是文件路径 
  32. xcache.mmap_path = "xcache" 
  33. xcache.coredump_directory = "" 
  34. xcache.coredump_type = 0 
  35. xcache.disable_on_crash = Off 
  36. xcache.experimental = Off 
  37. xcache.cacher = On 
  38. xcache.stat = On 
  39. xcache.optimizer = Off 
  40. [xcache.coverager] 
  41. xcache.coverager = Off 
  42. xcache.coverager_autostart = On 
  43. xcache.coveragedump_directory = "" 

四、eAccelerator

eAccelerator是一个自由开放源码php加速器,优化和动态内容缓存,提高了php脚本的缓存性能,使得PHP脚本在编译的状态下,对服务器的开销几乎完全消除。 它还有对脚本起优化作用,以加快其执行效率。

下载eAccelerator

http://www.sitebuddy.com/PHP/Accelerators/eAccelerator_windows_binaries_builds

把下载到的eAccelerator_ts.dll放到php的ext目录下。

打开php.ini,配置如下:

  1. [eAccelerator] 
  2. extension="eAccelerator_ts.dll" 
  3. eaccelerator.shm_size="16" 
  4. eaccelerator.cache_dir="设置缓存目录" 
  5. eaccelerator.enable="1" 
  6. eaccelerator.optimizer="1" 
  7. eaccelerator.check_mtime="1" 
  8. eaccelerator.debug="0" 
  9. eaccelerator.log_file = "设置日志文件" 
  10. eaccelerator.filter="" 
  11. eaccelerator.shm_max="0" 
  12. eaccelerator.shm_ttl="0" 
  13. eaccelerator.shm_prune_period="0" 
  14. eaccelerator.shm_only="0" 
  15. eaccelerator.compress="1" 
  16. eaccelerator.compress_level="9"

Tags: opcache apc xcache eAccelerator

分享到: