Mongrel2 is an application, language, and network architecture agnostic web server that focuses on web applications using modern browser technologies.
Mongrel2 is an application-, language-, and network architecture- agnostic web server that focuses on web applications using modern browser technologies.
Mongrel2 supports 17 languages and platforms, HTTP, Flash sockets, WebSockets, Long Polling, and many ways to deploy and hack on it. It's also operations-friendly: You can automate and control nearly every aspect of a Mongrel2 install from any of the supported languages. It's also open-source: you can find it on GitHub, and its homepage is at mongrel2.org, which also hosts the manual.
What makes Mongrel2 special is how it satisfies HTTP requests in a language agnostic and asynchronous way using a simple messaging protocol to talk to applications; not just serve files. Mongrel2 is designed to be incredibly easy to automatically manage as part of your infrastructure. Other web servers do some of the things Mongrel2 does, but they either do them in a disorganized way, or they don't do all of them at once. Plenty of language-specific web servers like Node.js and Jetty have asynchronous operation, but they’re not language agnostic. 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.