使用OPcache和PHP-FPM/Nginx时,命中率为0%

使用OPcache和PHP-FPM/Nginx时,命中率为0%,nginx,php,ubuntu-10.04,opcache,Nginx,Php,Ubuntu 10.04,Opcache,我正试图让PHP5.5的OPcache在Vagrant中运行在Ubuntu14.04上的Nginx/PHP-FPM设置上工作 我的/etc/php5/mods可用/opcache.ini目录配置如下: zend_extension=opcache.so opcache.enable=1 opcache.memory_consumption=256 opcache.max_accelerated_files=50000 运行php-v和phpinfo() 在OPcache GUI中,我可以看到

我正试图让PHP5.5的OPcache在Vagrant中运行在Ubuntu14.04上的Nginx/PHP-FPM设置上工作

我的
/etc/php5/mods可用/opcache.ini
目录配置如下:

zend_extension=opcache.so

opcache.enable=1
opcache.memory_consumption=256
opcache.max_accelerated_files=50000
运行
php-v
phpinfo()

在OPcache GUI中,我可以看到文件正在被缓存,我还通过将OPcache设置为以详细模式登录来确认这一点。问题是…他们永远不会被击中

我已经运行ApacheBench来敲打这个应用程序,没有一个命中被注册-0次命中和103次未命中。我甚至测试了一个
hello_world.php
文件,它只执行
echo'hello,world!',并且每次也会注册为“未命中”

有人知道会出什么问题吗

更新: 我成功地得到了一个可复制的点击注册案例。如果在运行
服务php5 fpm restart
之后,我立即使用100个并发连接运行ApacheBench,则缓存命中率>75%。从那时起,每次“正常”刷新也将注册为命中

然而,如果我重新启动php fpm,并且我的初始请求是“正常的”(即仅从我的web浏览器),然后我运行ApacheBench和100个并发连接-它们都会错过


这就像最初的请求需要敲打服务器,以便从那时起点击率保持不变……真的很奇怪!我假设这可能与php fpm生成进程的方式有关,但我在这方面确实是个新手,所以如果这给了任何人一些线索,请帮助

你有没有找到解决办法?我也有一个与你完全不同的环境。我使用快速cgi运行apache和php,而不使用process manager。点击率很低。这个问题有什么消息吗?