modern php enable zend opcache

字节码缓存能存储预先编译好的php代码

* 如果是自己编译PHP 

./configure --enable-opcache

 编译好后 php.ini

zend_extension=opcache.so

查看php扩展所在目录
php-config --extension-dir

  /Applications/XAMPP/xamppfiles/lib/php/extensions/no-debug-non-zts-20170718

警告: 如果使用 Xdebug, php.ini文件必须先加载Zend OPcache扩展, 再加载Xdebug

 

* 本地测试 配置Zend OPcache

mkdir ./config
cp /Applications/XAMPP//xamppfiles/etc/php.ini ./config/php.ini

  添加配置

zend_extension=opcache.so
opcache.validate_timestamps=1 ;; 在生产环境中设为0
opcache.revalidate_freq=0
opcache.memory_consumption=64
opcache.interned_strings_buffer=16
opcache.max_accelerated_files=4000
opcache.fast_shutdown=1

  如果php.ini文件中的opcache.validate_timestamps指令的值为0, Zend OPcache就觉察不懂php脚本的变化, 我们必须手动清空Zend OPcache缓存的字节码,让它发现PHP文件的变动。

php -S localhost:4000 -c config/php.ini

  

如果需要在同一局域网中的另一台设备访问这个PHP Web server,将localhost缓成0.0.0.0

php -S 0.0.0.0:4000 -c ./config/php.ini

  

 

 

 

* 查明使用的是否为内置的服务器

  echo php_sapi_name().PHP_EOL;    // 'cli-server'

  如果是在命令行  php xxx.php     // 'cli'

 

----------------------------------------------------

技术改变命运 学习成就梦想

posted @ 2018-07-15 17:46  zhanghui_ming  阅读(138)  评论(0编辑  收藏  举报