On Jan 22, 2006, at 5:10 PM, Sascha Ebach wrote:

>> Thanks for your work on this. Can you elaborate on what makes  
>> Mongrel so much faster than Webrick? What kind of optimization  
>> techniques did you use to make this faster. Are you using C  
>> extensions etc in part to speed things up. (I guess I'm looking  
>> for a bit of a architectural overview with a webrick arch.  
>> comparison to boot if you used that as inspiration)
>> Just curious! :)
>
> Yeah, me too. What I wonder about in specific is why not just  
> rewrite the performance critical parts of webrick in C. That way  
> you would already have the massive amount of features webrick  
> offers without having to duplicate all of this. I wonder if you  
> have been thinking about that and the reason you might have decided  
> against doing it this way.
>

Well, this may be mean, but have you ever considered that "the  
massive amount of features webrick offers" is part of the problem?   
It's difficult to go into a large (or even medium) code base and  
profile it and then add bolt on performance improvements.  It can be  
done, but it usually ends up as a wart on the system.

So, rather than try to "fix" WEBrick I'm just considering it a  
different solution to a different set of problems.  Mongrel may pick  
up all the features WEBrick has, but right now it's targeted at just  
serving Ruby web apps as fast as possible.

Zed A. Shaw
http://www.zedshaw.com/