On 12/11/06, Vlad Seryakov <[EMAIL PROTECTED]> wrote:
... I actually even tried to test PHP inside Naviserver, same file, it was much slower than under Apache and .adp. I specifically chose simple examples and no DB, i wanted to see how simple web pages are served. I always though that Apache/PHP is slower than Aolserver/Naviserver, looks like it is already history.
Simple examples aren't realistic. Still worth testing -- no reason equivalent subsystems of open source software shouldn't perform equally as well. But you have to be careful how you far you take it. For example, your tests were run with 10 concurrent high speed clients. On the open Internet, for the type of load your looking at, a more realistic test might be with 1000-10000 concurrent slow connections. This would, for example, flatter the accept() patch you just merged. With many slower clients, our servers read-ahead and keepalive features are going to have a big impact against an Apache server with PHP. Here's an infesting example: http://wiki.tcl.tk/15244 John Buckman tests AOLserver against lighthttpd (amongst others), which is a pretty fast event drivern web server. But if most of your pages are dynamic then every request gets passed back to one of your fastcgi Ruby processes and it's all just a big overhead. AOLserver creamed it 200x. Anyway, I'm not the worlds biggest Tcl fan, and I'm not necessarily wedded to AOLserver/NaviServer stuff either, so I hope it doesn't sound like I'm making excuses. But if you extrapolate out from 10 high-speed concurrent clients to uh oh, Apache kicks our ass, you're going to be disappointed. It goes both ways of course. Maybe with a more realistic test were actually really bad...! I think NaviServer has a lot of headroom. Doesn't really matter if no one's going to realise it, but still, I do think there is some low hanging fruit.