Wednesday, May 26, 2010

Workshop 7

DEVELOPER’S THREAD (RED team)

To Do:

Developers conclude their work with the OTBS and look at the options for deployment of the site. Examine the various platforms/software tools used for deployment such as UNIX environment suggested in the Discussion Notes, Mongrel or Mongrel cluster, Nginx, Subversion or Capistrano (during development stage), JRuby in the Java environment.

Which way?

The choice is up to you as this workshop present just one option and you may like to use another, such as deploying the OTBS in a .NET or J2EE environment

Deployment of a Web site depends on a lot of factors, RoR runs on most operating systems like linux, Mac, BSD and Windows and also from a wide range of web server configurations.


By accessing the rubyonrails.org site, it suggests several options, Passenger aka mod_rails, Proxy setups(Apache or nginx against Mongrels or Thins), JRuby on Rails (Glassfish or Jetty app server) and automate with Capistrano.


From my experience, Unix based system is more stable and secure than windows based system. Therefore, I will only consider Unix based system for the OTBS project. As OTBS is only a thin system, and Unix is good for big guy, Linux may be a better choice - open source and run on cheap computer hardware.


Mongrel is designed to server Ruby code, but it is not too suitable for static content like images, html, css or javascript. Therefore Mongrel should always deployed behind another webserver, like Apache (railhostinginfo, 2010). Apache with Mogrel will be the choice in the OTBS project.

According to rubyofrails.org, passenger is a very powerful deployment tool for RoR, it works well with Apache. It can be combined with Capistrano and taking the automated advantage (Modrails, 2010).

Moreover, Apache Subversion revision control system can be employ in the OTBS case, which can help to maintain the source code, web pages and documentation (Wikipedia, 2010)

A suggested deployment map is shown below: (Begin, 2008) 























Can you get the OTBS Running in production mode as a minimal production server?

Minimal production server is not only refer to the HW cost of the server but also the setup, upgrade, administration and maintenance cost of the OTBS project system. Our OTBS is running in the Linux mode with Apache and Mongrel, the HW server cost should be very low when compare with other operating system platform. Moreover, the SW tools that we are using are mostly open source (a lot of support documents available online) and is proven to work very well (easy to admin and maintenance) in this platform. I am  pretty sure to get the  OTBS running in production mode as a minimal production server.


Share your success by posting progress comments and links etc to the Developers sub-forum site that has been set up for the Red team.

No comments:

Post a Comment