4 ms·
Pancake HTTP Server faster than nginx running PHP
- ddorian43 14y agoThe benchmark is testing a php application.
- Hawkee 14y agoThank you, updated title.
- devicenull 14y agoCan we really trust numbers returned from a benchmark run on a VM? It seems like the other load on the system during each benchmark would effect the results.
- Adirael 14y agoInteresting but: This license does not allow using Pancake for commercial websites. If you want to use Pancake for such sites, please contact support [at] pancakehttp [dot] net
- cheald 14y ago"Pancake is a fast, simple and lightweight HTTP-Server written in PHP with acceleration for PHP-powered websites" So...it's written in PHP, so it loads up a PHP application and serves it faster than running through a real webserver to a PHP backend via FCGI. Duh? Now go ahead and add in high concurrency and static asset serving and add PHP-APC to the workers and don't benchmark on an OpenVZ VM (which doesn't guarantee resources!) and let's see how things shake out. Pancake seems to be touting this "CodeCache", which is great, except that PHP already has APC, which does this already, and I'll wager it does it better. This smells like a false benchmark, where Pancake wins because it's avoiding work that the poorly-configured nginx stack has to do. If you were to tune both of them to their maximum potential, I would be shocked if nginx didn't eat pancake for breakfast.
- pp3345 14y agoI am the developer of Pancake. I've found here after I got a mail saying that Pancake was mentioned here. I have to admit that benchmarking on an OpenVZ VM probably isn't the best idea. However, at the time of benchmarking, my VM was the only one on the host node and I've made sure that no other service on my VM could create high load. I believe that CodeCache is more efficient than APC and easier to use. In a future version I will also improve the CodeCache, allowing more code to be cached than now possible. I am also planning on having a feature for automatic configuration of the CodeCache.
- cheald 14y agoCan you do a benchmark demonstrating the performance nginx + php-fpm + APC versus Pancake + CodeCache under high concurrent load, including serving of large (>50kb) assets? Ideally, a benchmark that produces a chart of response time (Y) against concurrency (X) for each product would be great, because "serves one user really fast" is practically worthless for real world purposes. I want to know what the point is at which each server buckles.
- cheald 14y agoWell, I was curious and had a bit of free time, so I set up a benchmark. I just used Apache + mod_php with my all-the-extensions-and-the-kitchen-sink PHP install versus Pancake with a pristine PHP install (since it needs special compile flags) and the vhost provided for the nginx benchmark on the Pancake website. Results are here: https://docs.google.com/spreadsheet/ccc?key=0Aqxu-bQf_3O5dFdtT2ZZQUdCbE43X1BSelM3enZYV2c https://docs.google.com/spreadsheet/ccc?key=0Aqxu-bQf_3O5dFd... tl;dr: Pancake falls over completely at higher concurrencies. It even starts dropping requests at -c2, and it just gets worse as concurrency gets higher. I even tried running it with 16 workers rather than 4 (which should cover up through -c9 easily), and it was still failing to return valid results. Pancake's throughput goes up as concurrency goes up, but it's because it's just dropping requests rather than serving them. mod_php easily saturates my two cores with -c2 and remains consistent at ~285 req/sec. Pancake never really achieves better than 90 req/sec, and completely fails to handle high concurrency. Remember, this is Apache and mod_php, which is renowned for being the slow and creaky way to run PHP. If I were to set up nginx and php-fpm, I'm pretty sure I could push that chart even further. I call bull on "faster than nginx".
- mxcm 14y agoThe license for this web server is quite unusual, http://pancakehttp.net/license/ http://pancakehttp.net/license/ I would expect a more sensible license. P.S, that license page is so well hidden.. only possible to find by going to the github page
- pp3345 14y agoI am not a lawyer, I don't have a clue about law and licenses. Even though it is prohibited to use Pancake for commercial websites with this license I won't kill anyone because he is hosting a small blog making a few dollars with AdSense or developing some small scripts for friends for little money. Just in case someone would like to use Pancake for a online shop or something making bigger amounts of money I'd like that person to contact me.