[typo] Deploying Ruby on Rails Applications (was: Re: Can't update feeds?)

JZ hipertracker at gmail.com
Wed Jul 16 20:09:49 EDT 2008

On Wed, Jul 16, 2008 at 4:22 AM, Scott Likens <damm at livid.dk> wrote:

> To whomever it may concern,
> I notice the common thread here.  How to deploy typo?
> There is many ways to deploy typo, the most common is
> 1) FastCGI.

We all know, it sucks.

> 2) Mongrel/Webrick

Nginx with proxy load balancer to cluster of Thin/Ebb (+unix socket)
processes is a much faster.

> 3) Phusion Passenger (aka mod_rails?)

This is the best option. Fast and dead brain simple to deploy (just like PHP).

> Now, there's no real difference with Mongrel/Webrick

Mongrel is much faster than Webrick. Thin is faster than Mongrel, and
Ebb is faster than Mongrel or Thin.

>  But those who have come from the "PHP Boat" (as we'll call
> it, a/k/a wordpress, etc) they just untar files into a directory edit a few
> files, loadup their web browser and bam.  It works.

Phusion mod_passenger  (http://www.modrails.com/) works in the very
same way. Just copy your files, load web browser and bam. It works.
Need to reload application? No problem. Create empty restart.txt file
in the tmp folder. Apache will reload the application. No need to
restart Apache. No SSH needed. Simple FTP access is all you need.
mod_passenger works also with others  Ruby frameworks which use
Rack,e.g. Merb. It even works also with Python... :)

You also forget mention Ruby Enterprise version which uses 33% less
memory... It works fine with mod_passenger and lowers the memory
footprint. http://www.rubyenterpriseedition.com/

mod_passenger is _the easiest option_  for deployment Rails
applications (including Typo).

But, there is also another, 4-th deploy option: JRuby. It is also
brain dead simple to deploy. Just create WAR file and copy it into
webapps Tomcat's folder. That's all!

sudo jruby -S gem install warbler, activerecord-jdbc-adapter
jruby -S rails my_app

For developing use: jruby script/server; jruby script/console etc.

For production, just create  ROOT.war file (with "warble war" command)
and copy it into webapps folder in Tomcat, Jetty or another Java
servlets container. This WAR file contains ALL gems (including JRuby
interpreter) so it works fine in all platforms.

Jaroslaw Zabiello

More information about the Typo-list mailing list