I'm still not quite sure where Mongrel2 fits in the stack. Is the idea to just take care of the nitty gritty details of writing an asynchronous HTTP server and expose it to app servers via ZeroMQ? Like an asynchronous version of FastCGI?<p>If I already have an app server that has a good asynchronous HTTP server built-in (Tornado, Node.js, etc) is there any reason I'd want to use Mongrel2?<p>From the documentation:<p><i>"Other web servers will let you talk to any language as a backend, but they insist on using HTTP proxying or FastCGI, which is not friendly to asynchronous operations."</i><p>Maybe I don't understand why HTTP proxying isn't async friendly? Node.js does it quite well.<p>Not trying to knock Mongrel2, I'm just trying to understand better.<p>Zed if you're listening, some example deployment scenarios would be helpful.
This is pretty cool. One thing tho:<p>The @routename construct is <i>still</i> not explained in the documentation, but used in that documentation.<p>I hate to be this guy, but I pointed that out to the mailing list before the last release, along with a request for advice on how to proceed with fixing the docs, and got no reply. I figured since Zed bragged about fixing the routing docs, they would have included some sort of mention of the mysterious symbol, but alas, no.
This is a project to watch. Language agnostic web server with a 0MQ back-end to automagically take advantage of multi-threading/multi-core on modern hardware. Nice.<p>Plus he is running unit tests against code samples in the manual. Brilliant!
TNetStrings seems quite similar to Bencode less the size prefix.<p><a href="http://tnetstrings.org" rel="nofollow">http://tnetstrings.org</a><p><a href="http://enwp.org/Bencode" rel="nofollow">http://enwp.org/Bencode</a><p>(sample implementation) <a href="https://github.com/bittorrent/bencode/blob/master/bencode/__init__.py" rel="nofollow">https://github.com/bittorrent/bencode/blob/master/bencode/__...</a>