Yes, it handles concurrent requests *except* for right when it runs the
actual Rails dispatcher.  Rails isn't thread safe and so there needs to be a
big sync lock around the whole thing to keep Rails from peeing in it's pants
like a schoolgirl.

Otherwise there are a fixed number of worker threads that simply wait on a
queue of requests to process and they work with those in parallel.  Right
after Dispatcher is done the lock is released and the required IO is sent
back via these worker threads.

It can handle a reasonably good load with this, but probably still needs
some tuning.

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


On 2/12/06 5:06 PM, "Andreas S." <f / andreas-s.net> wrote:

> Zed Shaw wrote:
> 
>> As you should already know, Mongrel is a fast HTTP server and library
>> for
>> Ruby partially written in C.  It supports running Ruby on Rails
> 
> Does it handle multiple concurrent Rails requests (threads)?