HHVM比PHP慢

时间:2015-05-27 09:57:30

标签: php nginx hhvm

我已将Apache + modphp替换为nginx + HHVM。 单独的html文档(来自curl和FF)原始站点运行1-2秒。 使用HHVM,它现在运行14-20秒。

这一切都在Ubuntu 14.04上运行。有了股票php.ini和server.ini

以下是一些配置:

location ~ \.(hh|php)$ {
    fastcgi_keep_conn on;
    fastcgi_pass 127.0.0.1:9000;
    fastcgi_index index.php;
    fastcgi_param SCRIPT_FILENAME $request_filename; // The only change
    include fastcgi_params;
}
server {
    #listen stuff
    #root stuff
    #index stuff

    location / {
        try_files $uri $uri/ index.php?$query_string;
    }

    include hhvm.conf
}

这是使用CodeIgniter作为框架。

1 个答案:

答案 0 :(得分:0)

这里可能存在很多奇怪的效果,这在很大程度上取决于你的应用......但总的来说,这真的不应该发生。一些快速的尝试:

  • 确保您正在进行一对一的比较,例如,不是在另一台配置不同/不正确的MySQL的计算机上,或者是因为a等待卷曲请求而花费大量时间错误配置的代理或类似的东西。
  • 实际花在HHVM上的时间,还是一些nginx,mysql等配置问题? top可以帮助您解决这个问题,第一个近似值:哪个进程占用CPU?或者,如果它们都不是,那时间在哪里?
  • 您是在测量第一个请求,还是在某些负载下执行此操作? HHVM需要花费一些时间才能正常预热,并且可能会有奇怪的性能配置文件。 100-200个请求就足够了。
  • 如果你无法弄清楚发生了什么,你可以跳上Freenode IRC上的#hhvm,我们可以帮助你研究它。在美国太平洋时间,人们往往会在工作时间出现。