Apache Hello World Benchmarks
Joshua Chamas writes "I have been running the Hello World benchmarks for years, and I have finally published the Apache Hello World Benchmarks site based on this data. Most people have a love-hate relationship with benchmark data, but I think its critical information to have whenever choosing what's right for your project. The beauty of these benchmarks is that they are open source, so one can run them easily on their Apache/UNIX system and pry them apart to see what makes them tick!"
I am very suprised about the "slowness" of Mason and it's memory consumption. Mason's advantage is the cacheing of pseudo-compiled components. I wonder if this Benchmark suite is reasonably testing Mason's scalability (does it scale linearly or logrithmicly, or what).
-- I am not a fanatic, I am a true believer.
PHP scripts are compiled in run-time. You can speed up PHP significantly by using a "Cache" module that stores precompiled php scripts (compiled ONLY the first time they are requested) in memory that is shared among requests. APC is a great one and is available at: http://apc.communityconnect.com/
Zend (http://zend.com) Also has a number of PHP goodies! Expect some significant speed improvements when using a cache! I highly recommend them!
x
Ever need an online dictionary?
Wow, we use some tomcat at work, and I'm surprised as hell by those. I always assumed mod_perl was a memory hog.
I wonder why they didn't include JBoss or WebLogic? WebLogic, I can understand - expen$ive... but JBoss is free, it's on sourceforge.
BTW: This comment is echoing in a very empty room...
My mod_perl stuff usually works very fast when compared to the other stuff...
Guess I shall keep kludging in perl.
-- The universe began. Life started on a billion worlds...
-- Except on one where stupidity was there first.
Using hello world as a benchmark? This doesn't make much sense since "hello world" is a learning / testing application for developers and no technical merits can be properly tested using this method except initial load time, initial memory usage, etc.
Regardless, I think most admins understand apache is one of (I would say the fastest) the fastest web servers in the market.
This is the Internet. You can say "fuck" here. - AC
I know it's not the Apache httpd, but I would have thought that if you were going to benchmark an XSLT suite, you'd be trying out Cocoon, which is an Apache project.
Any story on why you didn't get around to that? If you're going to run more of these, that would be a good one to use.
"Oh, I hope he doesn't give us halyatchkies," said Heinrich.
Apache is not the fastest web server at all. Depending on how you define "one of" it's not even one of the fastest web servers. Any admins that think it is have not actually tried many other web servers.
That said, I do think most admins would agree that Apache may have the best balance of flexibility, stability, configurability, support, and performance among general-purpose web servers. That's why I use it for most things.
Oh yeah, the price is right, too.
If you want something really fast (at least for static content), look at thttpd, mathopd, or Zeus. For simplicity and performance alone, mathopd is hard to beat. Only 17KB executable (on my machine anyway).
title Hello World Program (hello.asm)
.model small
.stack 100h
.data
.code
; This program displays "Hello, World!"
dosseg
hello_message db 'Hello, World!',0dh,0ah,'$'
main proc
mov ax,@data
mov ds,ax
mov ah,9
mov dx,offset hello_message
int 21h
mov ax,4C00h
int 21h
main endp
end main
and if your server is going to be very high-load, AOLServer is normally a really good choice.
(no, that's not a joke, seriously, check it out)
In my own benchmarks of web applications, I try to include a super simple test to establish a baseline, so that there is a point of reference for comparing the real application.