I am looking into developing an app to run in Windows
2000/2003 Server environment. To install ROR on a server to
run an app on Webrick do I need any extra steps beyond those
needed to install on my development laptop (XP prof) ?
The basic install of the software and your application will be
essentially the same as your development laptop. The main thing I
assume you will want is to have the application automatically run when
the server starts. This will require setting up your app to run as a
service. I would highly recommend using Mongrel instead of Webrick for
a number of reasons.
First, it can be easily configured to work as a windows service (this is
what I am using (although only running on WinXP essentially acting as a
Second is performance
Third is scalability. You don’t mention how many users will be
accessing the application at the same time but you may find the need to
add more instances of your application and if you are using Mongrel you
can run the Mongrel cluster to expand your application.
The idea is to run the aplication in an office LAN. I assume
the ROR installations steps will be similar to my local
installation. I plan to use the ROR windows installer.
This is exactly my situation. I have a very small specialized app that
is used by 2-3 people served off a WinXP box under Mongrel as a service.
You cannot use Mongrel_Cluster under Windows, so larger apps require
I’ll be covering Windows deployment in an upcoming book. However, the
and short of this is that Mongrel is the best choice for deploying in
Windows. You may need additional tools if you want scalability, but for
smallish apps, it will work fine.
You need Ruby (one click will work fine).
Then you need to install Rails
Then you install Mongrel
gem install mongrel
Pick the highest numbered version (0.13.3 or higher)… it’s going to be
the top of the list so you may need to scroll up and look in the
Accept all dependencies
To run Mongrel, you just replace your call to script/server with
Want to run in production mode? mongrel_rails start -e production
Want to install as a service?
- gem install mongrel_service
- from the root of your app (where you normally start webrick) do
mongrel_rails service::install -N my_test_app -e proudction
- mongrel_rails service::start -N my_test_app
If your app is configured properly then everything should go fine. See
mongrel docs for more information.
With the right hardware, you should be able to get about 9 to 35
Thanks for your input. I will look into the mongrel suggestion
I have a few more questions:
-Just to be sure… Is it possible to run Webrick on one port and Mongrel
on another for the same app ? i would just like to make sure that in
case I want to revert to Webrick there will be no problems and also do
some crosschecking on my development machine.
-My app may have up to 5 people simulataneously
Thanks for your input
I would avoid WEBrick for your app… but yes it’s possible to run both
servers pointing to the same app. In fact, that’s how you do load
with multiple servers.