- Mongrel (web server)
-
Mongrel Developer(s) Zed A. Shaw Stable release 1.1.5 / May 22, 2008 Operating system Cross-platform Type Web server License Ruby License[1] Website rubygems.org/gems/mongrel Mongrel is an open-source HTTP library and web server written in Ruby by Zed Shaw. It is used to run Ruby web applications and presents a standard HTTP interface. This makes layering other servers in front of it possible using a web proxy, a load balancer, or a combination of both, instead of having to use more conventional methods employed to run scripts such as FastCGI or SCGI to communicate. This is made possible by integrating a custom high-performance HTTP request parser implemented using Ragel.
Contents
Deployment
One popular configuration is to run Apache 2.2 as a load balancer using mod_proxy_balancer in conjunction with several Mongrel instances, with each Mongrel instance running on a separate port. This is something that can be configured very easily using the mongrel_cluster management utility. Apache can divide the incoming requests among the available Mongrel processes, and, with careful configuration, can even serve static content itself without having to delegate to Mongrel. Until recently, Twitter was a notable instance of this configuration.[2]
For those who wish to avoid Apache altogether, it is possible to deploy a Mongrel cluster with an alternative web server, such as nginx or lighttpd, and a load balancer of some variety such as Pound or a hardware-based solution.
Mongrel is capable of serving Ruby on Rails powered sites without requiring any other web servers, though as a single-threaded application this configuration is unsuitable for all but light loads.
See also
References
- ^ http://github.com/fauna/mongrel/blob/master/LICENSE
- ^ "Unicorn Power", Twitter Engineering Blog, March 30, 2010
External links
- Swiftiply an alternative, event based wrapper around Mongrel, that conforms to the Mongrel API.
Ruby programming language IDE - NetBeans
- RubyForge
- RadRails
- RubyMine
- ActiveState Komodo
Implementations Applications Libraries and frameworks - Adhearsion
- Camping
- eRuby (RHTML)
- Hobo
- Merb
- Nitro
- RubyCocoa
- Ruby on Rails
- Ramaze
- Sinatra
- Padrino
- QtRuby
Server software Other - Category
Categories:- Free web server software
- Ruby programming language
Wikimedia Foundation. 2010.