Pec*_*ata 13 php performance hhvm
我正在尝试从PHP 5.4(使用FPM作为FastCGI和apc)在nginx上迁移到HHVM - FastCGI(也是nginx).
我的应用程序是一个以Slim为框架的广告服务器.广告服务器连接到redis,memcached(用于套接字和http),MySQL,MongoDB(这些端点在HHVM版本中禁用),使用SOAP和beanstalkd连接到Java后端.
该应用程序有一个测试端点,计算一个Fibonacci系列,在请求11之后速度非常棒!
但是......其他终端的基准在hhvm中更糟糕(当然,在请求11之后).
我认为这总是hhvm模式解释器.
一些想法?
谢谢!
环境:
8个处理器和8GB RAM.
$ uname -a
Linux 3.13.0-30-generic #55-Ubuntu SMP Fri Jul 4 21:40:53 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 14.04 LTS
Release: 14.04
Codename: trusty
Run Code Online (Sandbox Code Playgroud)
我编译了hhvm,因为我修改了phpredis:
$ hhvm --version
HipHop VM 3.2.0-dev (rel)
Compiler: heads/master-0-gb7802e739a1f16808dd06c57754c1dc77ed80054
Repo schema: acdee0ea91d0b5967c60a0a42f5dbf81433a7821
Run Code Online (Sandbox Code Playgroud)
测试:
斐波纳契测验
PHP
1.1112360954285
Run Code Online (Sandbox Code Playgroud)
HHVM
1.7104048728943
1.7193510532379
1.7104179859161
1.713366985321
1.7120008468628
1.7102618217468
1.7118058204651
1.7113170623779
1.7101211547852
1.7117080688477
1.7127840518951
0.10136723518372
Run Code Online (Sandbox Code Playgroud)
地理定位测试(SOAP)
PHP
Endpoint time
0.011466026306152
SOAP connection time
0.0031890869140625
Run Code Online (Sandbox Code Playgroud)
HHVM
1 Endpoint time
0.26668095588684
1 SOAP connection time
0.017861127853394
2 Endpoint time
0.059494972229004
2 SOAP connection time
0.0069239139556885
3 Endpoint time
0.058794975280762
3 SOAP connection time
0.007004976272583
4 Endpoint time
0.057528972625732
4 SOAP connection time
0.0068209171295166
5 Endpoint time
0.059458017349243
5 SOAP connection time
0.0067899227142334
6 Endpoint time
0.058032035827637
6 SOAP connection time
0.0068209171295166
7 Endpoint time
0.060270071029663
7 SOAP connection time
0.0065340995788574
8 Endpoint time
0.062243938446045
8 SOAP connection time
0.0065720081329346
9 Endpoint time
0.060788869857788
9 SOAP connection time
0.009145975112915
10 Endpoint time
0.065010070800781
10 SOAP connection time
0.007810115814209
11 Endpoint time
0.057285785675049
11 SOAP connection time
0.0065789222717285
12 Endpoint time
0.057971000671387
12 SOAP connection time
0.0066900253295898
Run Code Online (Sandbox Code Playgroud)
我不会采取行动。我有一个运行 WordPress ( http://www.yourengagement101.com/ ) 的客户端,该客户端遇到了性能问题。它在 lamp/ubuntu/ec2:lb 上运行,每天获得超过 50,000 个唯一值。安装并配置 FPM 后,它一直稳定且持续运行。
这取决于你得到什么以及你想要完成什么。虽然你的科学模式看起来很有趣,但基准似乎是一个问题。不管怎样,根据我的个人经验,我尝试过很多,包括 zend 服务器优化器,但我没有运气,并且充满热情地鄙视它。
在亚马逊上,我们能够将请求发送到 2 个不同的数据库/网络服务器,这帮助我们扑灭了火灾,尽管这不是计划中的。