12.2. Mongrel

Mongrel was developed to fill a need. It's a small, Ruby-based web server (with C extensions for speed) that integrates nicely with Rails and other Ruby web frameworks. It's easy to set up for a small site, and you can cluster and scale it to manage high-traffic loads as well. In this section, you'll see how to set up and install a simple Mongrel installation, and how to create a clustered Mongrel setup and integrate it with Capistrano.

Please note that as web deployments need to manage more and more traffic, they become somewhat specialized to the needs of that particular web application. They also increasingly rely on server components that are external to Rails and this book. See the "Resources" section at the end of this chapter for suggestions on managing high-traffic Rails web applications.

12.2.1. Getting Started

Mongrel is distributed as a Ruby gem. Install it as follows:

$ sudo gem install mongrel

As of this writing, the current version is 1.1.2, and you will be prompted to select a specific version based on whether you are on Windows or something else.

If Mongrel is installed, the script/server command you run during development will auto-detect it and run Mongrel instead of the default WEBrick. However, the preferred way of starting Mongrel as a Rails server, even during development, is by running the following command from your Rails root:

mongrel_rails start

When the mongrel command has no arguments, it will run in the foreground and can be stopped ...

Get Professional Ruby on Rails™ now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.