Language agnostic web server Mongrel2 1.0 released
Version 1.0 of Mongrel2, a language agnostic web server initiated by Zed Shaw, has been released. Shaw announced the release on his blog of the project which began development only three months ago. "I love this project" said Shaw, "Even if it doesn't go anywhere and nobody uses it I am so happy I got to work on another cool idea nobody's really done before". Mongrel2 uses a simple backend protocol to allow Ruby, Python, C++, .Net and other languages make use of it's ability to handle not just HTTP but Flash XMLSockets, WebSockets or Long Polling, and it's event based I/O system.
The original Mongrel, also created by Shaw, was Ruby Framework agnostic and became popular with Ruby developers as a fast configurable server. With Mongrel2, the developer created a new project, using the original Mongrel HTTP parser which would support many languages as equal. To do this, the server routes requests from clients over backend protocol using ZeroMQ messaging to dispatch those requests to applications running handlers. ZeroMQ does not require a central message server making it simpler to deploy Mongrel2 servers and handler applications over a network in any required configuration.
The Mongrel2 servers configuration is stored in an SQLite database with an application, m2sh, for communicating with the server and manipulating the configuration. More details about installing, deploying, working with and managing Mongrel2 is available in the extensive documentation. The BSD Licensed Mongrel2 is available to download from the project's home page. In his announcement, Shaw notes that "nothings perfect" and encourages developers to "try building stuff, and then tell me what sucks and what's awesome".