我正在尝试在具有PHP7和Nginx和FastCGI PM的docker容器中构建这个symfony2应用程序.
每次应用程序执行时,我都会在kernel.request和kernel.controller之间得到这神秘的3秒无法解释的执行时间.
当我在无业游民的计算机上的典型PHP5.5 apache2配置上运行该应用程序时,没有此行为,因此我不确定是否与我的PHP配置或PHP7有关,但是我想知道是否有人看到过像这样的事情,并且不知道这里可能会发生什么?
编辑以下docker_compose配置:
@H_403_15@cafe: build: /opt/cafe ports: - "9981:80" environment: - "CAFE_CACHE_DIR=/tmp/cafe/cache" - "CAFE_LOG_DIR=/var/log/cafe" - "SF_ENV=local" volumes: - /var/log/PHP7:/var/log/PHP7 - /var/log/Nginx:/var/log/Nginx
最佳答案
万一有人好奇或有相同的问题,我终于找到了问题,这不是我所期望的.当我为PHP7设置该项目时,我无法使用通常需要的标准linux发行版,因此必须自己添加所有配置文件.
经过艰苦的代码分析,我发现停滞的确切行是我在kernel.controller侦听器中运行get_browser()(http://php.net/manual/en/function.get-browser.php)的地方.由于在容器中设置PHP配置时使用了browscap.ini文件,因此get_browser()出现性能问题.我猜出于某种原因,我使用的browscap.ini文件有解析问题.我使用lite_PHP_browscap.ini版本进行了更改,现在它运行非常快,没有问题.