Single Threaded Async Responses

Eric Wong normalperson at
Mon Oct 19 14:33:39 EDT 2009

James Tucker <jftucker at> wrote:
> Hi Eric and anyone else listening in,
> I completed an async API for Thin quite some time ago well suited to  
> some of the design goals you have here. If you're interested we could  
> have a chat about supporting the same API designs that allow single  
> threaded reactor based concurrent responses. I believe such an API would 
> fit well in rainbows too.

Hi James,

I've looked at Thin and added this as a TODO item for Rainbows! once
EventMachine support gets added.

For now, we also have an a (more Rack-compatible[1] but certain
Unices-only[2]) API which relies on passing file descriptors to Rev in
Rainbows! 0.3.0.

[1] - The only thing that keeps it from running correctly under
      Rack::Lint is that Rack::Lint doesn't pass body#to_path calls
      to up the stack even though it _allows_ it.

[2] - Most Unices seem to support /dev/fd/#{io.fileno}
      to lookup the contents of the file descriptor table.

Eric Wong

More information about the rainbows-talk mailing list