5 ms·
Did you guys turn on byte code caching for all the PHP frameworks? If not, then I recommend everyone ignore these benchmarks until that is completely done.
by giulianob 14y ago
Did you guys turn on byte code caching for all the PHP frameworks? If not, then I recommend everyone ignore these benchmarks until that is completely done.
- krg 14y agoWe did. PHP 5.4.13 with APC, using PHP-FPM, running behind nginx.
- kainsavage 14y agoYes, we are using APC for all the PHP tests in this round of benchmarking.
- keammo1 14y agoIs there somewhere we can see the settings for APC? Thanks for the great work!
- krg 14y agohttps://github.com/TechEmpower/FrameworkBenchmarks/tree/master/config https://github.com/TechEmpower/FrameworkBenchmarks/tree/mast... See php.ini, php-fpm.conf.
- keammo1 14y agoI could be missing something, but it looks like you are using the default settings. Have you tried tweaking it all? Specifically setting apc.stat=0, which will stop it from checking the mtime. You'll need to clear the cache with apc_clear_cache() when you make code changes though. You may also want to look at apc.php to check for fragmentation and adjust apc.shm_size if necessary
- ebiester 14y agofork, benchmark, and create a pull request. :)
- keammo1 14y agoI'm hesitant to just change the config to apc.stat=0, since I can't ensure apc_clear_cache() will be called during deployment I'll add in apc.php to help make sure other things are tuned properly though. different settings could be appropriate for different servers...
- deleted 14y ago[deleted]
- meritt 14y agoHaving max/min spare servers as the same amount is a bad idea. This is incurs a substantial amount of process swapping, as every single request php-fpm is going to try and ensure there are precisely 256 idle servers.
- krg 14y agoOk, help us out: Given that we have Wrk set to max out at 256 concurrent requests, what would the ideal tuning for php-fpm? A pull request would be ideal, but you can also just tell us. :)
- meritt 14y agoI'd set minimum idle to something like 16 or 32. php-fpm will not create more than 32 workers/sec. What happens now is 256 workers running and 256 simultaneous requests occur. So php-fpm sees 256 workers busy, 0 idle. The minimum idle is 256, so it attempts to start 256 additional processes.
- deleted 14y ago[deleted]
- resu_nimda 14y agoSo, they've put a ton of effort into this, have been very receptive to community feedback and criticism, and have followed through with a major update to the whole thing. And then you come in with a drive-by recommendation for everyone to ignore the whole thing because of your unfounded and incorrect assumption. Nice work.
- giulianob 14y agoI said that because it was the case with the first version of the benchmark.