pengjunling 发表于 2018-12-11 10:53:41

php 安装 zend opcace-cym346799967的博客

  1.linux 安装
  wget http://pecl.php.net/get/zendopcache-7.0.5.tgz
  tar xzf zendopcache-7.0.5.tgz
  cd zendopcache-7.0.5
  /usr/local/php/bin/phpize
  ./configure   --with-php-config=/usr/local/php/bin/php-config
  make
  make install
  Note:
  If you want to use OPcache with » Xdebug, you must load OPcache before Xdebug.
  如果你使用了Xdebug,您的配置中OPcache 要放到Xdebug前面。
  在php.ini中加入:
  zend_extension=/usr/local/php/lib/php/extensions/no-debug-zts-20100525/opcache.so
  opcache.memory_consumption=128
  opcache.interned_strings_buffer=8
  opcache.max_accelerated_files=4000
  opcache.revalidate_freq=60
  opcache.fast_shutdown=1
  opcache.enable_cli=1
  其中:max_accelerated_files 设置的是缓存的文件,这个您需要到您的应用下面查看一下php文件的数量,可以通过下面的命令统计:
  find ./ ( -name '.php' -or -name '*.inc' ) -type f -print |wc -l
  如果文件多,可以设置的高一些。
  整理了一下其在php.ini中各参数的使用说明,供大家参考,有一些不太懂的,就留空了,还请高手赐教。
  名字默认可修改范围   含义
  opcache.enable“1” PHP_INI_ALL 是否启用opcache
  opcache.enable_cli“0” PHP_INI_SYSTEM是否在CLI(即命令行时)启用opcache
  opcache.memory_consumption“64”    PHP_INI_SYSTEM为opcache分配多少共享内存,单位M
  opcache.interned_strings_buffer “4” PHP_INI_SYSTEMinterned string的内存大小
  opcache.max_accelerated_files   “2000”PHP_INI_SYSTEM最大缓存的文件数目。
  实际上这个值会使用第一个大于你配置的数字的下列素数
  { 223, 463, 983, 1979, 3907, 7963, 16229, 32531, 65407, 130987 },
  如你将该值指定为400,则实际上该值为463.
  opcache.max_wasted_percentage   “5” PHP_INI_SYSTEM
  opcache.use_cwd “1” PHP_INI_SYSTEM如果置为1,则将当前路径加入到文件key中,
  以避免可能产生的同文件名的文件key冲突
  opcache.validate_timestamps “1” PHP_INI_ALL 如果置为1,则OPCACHE会自动检测文件的时间戳
  (检测周期为revalidate_freq),
  并根据文件的时间戳来更新opcode,如果置为0,
  则只能手动去重启opcache或
  重启webserver以使更新后的php文件生效
  opcache.revalidate_freq “2” PHP_INI_ALL opcache自动检测文件是否更新的周期,单位秒。
  如果是0,则每次请求时opcache都要进行检测。
  当validate_timestamps为0时,本指令无效。
  opcache.revalidate_path “0” PHP_INI_ALL
  opcache.save_comments   “1” PHP_INI_SYSTEM是否保存文件中的注释
  opcache.load_comments   “1” PHP_INI_ALL 是否load comments,与save_comments联合起来使用,
  如果该值为0,则即使save_comments为1,
  那么php脚本中的comments也是不使用的
  opcache.fast_shutdown   “0” PHP_INI_SYSTEM是否打开快速关闭,
  打开时可使php在request shutdown时回收内存快
  opcache.enable_file_override    “0” PHP_INI_SYSTEM如果置为1,则每次调用file_exist() is_file() is_readable()函数时,
  opcache将要检查该文件是否被cache了,
  这样增加了检查存在性和可读性的开销,
  但避免了当validate_timestamps为disable时返回错误文件状态的风险。
  opcache.optimization_level“0xffffffff”    PHP_INI_SYSTEM运行时控制优化的掩码(干什么的?)
  opcache.inherited_hack“1” PHP_INI_SYSTEM5.3以前使用。5.3后废弃

  opcache.dups_fix    “0” PHP_INI_ALL 为解决“cannot redecllare>  opcache.blacklist_filename“”PHP_INI_SYSTEM设置黑名单文件,符合黑名单文件中定义的php文件将不被opcache。黑名单文件的例子如下:
  ; Matches a specific file.
  /var/www/broken.php
  ; A prefix that matches all files starting with x.
  /var/www/x
  ; A wildcard match.
  /var/www/*-broken.php
  一行为一条规则,支持通配符,注释以分号开头
  opcache.max_file_size   “0” PHP_INI_SYSTEM被cache的文件的最大size,单位bytes。0表示不限
  opcache.consistency_checks“0” PHP_INI_ALL 如果置为N,N非零,则opcache会每N个请求核实一下cache的检验和。
  这会损害性能,应该只在debug时使用
  opcache.force_restart_timeout   “180”   PHP_INI_SYSTEM如果opcache处于非active状态,当N秒后opcache将自动重启
  opcache.error_log   “”PHP_INI_SYSTEMopcache自身的errorlog文件路径,为空时则使用stderr
  opcache.log_verbosity_level “1” PHP_INI_SYSTEM日志记录level,默认只有fatal error和error
  opcache.preferred_memory_model“”PHP_INI_SYSTEMopcache首选使用的内存模型,为空时会选择最适当的模型。
  常用的有,mmap shm posix 和win32
  opcache.protect_memory“0” PHP_INI_SYSTEM运行php脚本时保护共享内存防止意外的写入。
  只对debug时有用。
  opcache.mmap_base   NULL    PHP_INI_SYSTEM

页: [1]
查看完整版本: php 安装 zend opcace-cym346799967的博客