he Ruby language's conciseness makes it great for developmentfewer lines of code means reduced development time and maintenance costs. Rails, the Ruby-based web application framework, can be equally developer-friendly, but some developers have encountered scaling limitations when deploying large-scale Rails web applications. While scaling Rails applications over many servers to handle many thousands of concurrent users can indeed lead to problems, with the proper tools and techniques developers can deploy small- and medium-scale Rails applications effectively.
In this article, I explain how to do just that using my preferred Ruby and Rails development IDE NetBeans 6.0, some open source server and caching systems, and the typical Rails application I work with: running on a single server and needing to support only 100 or so concurrent users. The article begins by walking you through how to set up NetBeans 6.0 for Ruby and rails development, and then moves on to techniques for deploying Rails applications efficiently.
This article assumes you have some experience with Rails development (in particular, creating a Rails application and using the Rails command-line tools) and version control (in particular, installing and using the command-line SVN toolssee Sidebar 1. Using Subversion for Version Control). It also assumes you know how to set up a Linux server for production (with Ruby, Gem, and Rails installed). It will not provide instructions for setting these up. To get the most out of this article, you will need the following technologies in addition to Rails and your Linux server: