yaws
Joe Armstrong
joe@REDACTED
Mon Jun 24 15:50:16 CEST 2002
On Thu, 13 Jun 2002, Klacke wrote:
> Yet another release of yaws, 0.48 this time and
> it feels as if yaws is getting more and more ready now.
>
> Performance is great, I can deliver some 2500 dynamically
> generated html pages /sec on a 2GhZ machine.
Great - I'm interested in the 2500 pages/sec figure - I have zero
ideas is this good - how does it compare with commercial
things (like ASP) or free things like PHP???
I too have been playing with a little socket based
client/server thingy of my own (Which I will release soon :-)
My thingy multiplexes many different logical channels onto the
*same* port - (so you can serve HTTP and irc (my own) and anything else
on port 80) - when I get a connect request on port 80 I analyse the packet
and spawn off an appropriate parser ... since many people seem to
like port 80 programs I thought I'd dump everything onto port 80 and
differentiate in software :-)
In HTTP mode I could serve small pages (150 bytes) at about 700/pages sec
(say 930 scaled to klacke's 2 GHz) -
When I was serving Erlang terms, things were much faster
(this was just an open_port -> term_to_binary -> send -> receive ->
binary_to_term -> close port type setup).
Here I served 20K requests/per second (probably ok :-)
Questions:
1) Where does all the time go in serving up HTTP pages?
<< the difference of 700 vs. 20,000 requests/second is
amazing - Is this just the time taken to parse the
HTTP headers and dispatch the request? >>
(interestingly my HTTP server needed 619/reductions to process
a request - and the erlang term server took 28 reductions) -
2) What is "good performance" for serving static/dynamic content HTTP
pages?
3) What is "high performance" for serving up PHP/ASP pages? -
I checked the net to see if I could find this out but saw such laughably low
figures that I couldn't believe them.
<aside> I saw ballpark figures of 50 pages/sec for ASP servers -
this seems way too low to be called high performance - are they really
that bad?
</aside>
/Joe
More information about the erlang-questions
mailing list