Thin or Pow or Powder: Which is next Rails Web Server?
There has been a lot of evolution on the areas of different servers which has been developed for Rails applications. A small limitation of one server is exploited by the other and is projected as a real benefit of using the new server. Also at the same time, there are some servers which flaunt on their small footprint and high performance and there are some which are made with totally different logic to really help the rails app perform better in every aspect and at the same time reduce the overhead by making it simpler to use.
You might be already aware that Rails actually ship with WEBRick server. So whenever you are executing command: rails server, this is the server which gets started. However there are other servers like Unicorn, Phusion Passenger, Thin, etc as well. Most of the production environments and web service providers will use Phusion Passenger with NGINX as the server for hosting Rails applications.
I have been using THIN as the webserver for local rails development. The mongrel parser, event machine and rack makes it secure, stable, fast and extensible Ruby web server. Easy to install as a gem is also for your own pleasure.
Rails Web Server
Recently 37signals folks released POW, which boasts itself as Zero configuration server for Mac OSX which will Knock Out Rails & Rack Apps Like a Superhero. With the founder company for Rails itself, I had much trust in these folks and thought of giving it a try. I have to admit that they have kept it really simple. They created it to make all of our lives easier because you no longer have to think about application servers in development with Pow.
Their website mentions:
To install or upgrade Pow, open a terminal and run this command:
curl get.pow.cx | sh
To set up a Rack app, just symlink it into ~/.pow:
$ cd ~/.pow $ ln -s /path/to/myapp
That’s it! Your app will be up and running at http://myapp.dev/
I have tried it for my rails app and it works fine. Looks to be a much cleaner way for running rail apps. Another good part is you can update the POW version without much worrying about any inconsistencies.
But that doesn’t put to an end. The guys at LogicalFriday wanted something more easier and thats when got launched POWDER: making Pow even easier! The blog lists the steps as follows:
Install powder as a gem
gem install powder
and then installing Pow is as easy as
Then, if you had a Rails project called chunky-bacon, just
cd path/to/chunky-bacon powder powder open
and your web browser will open your app at http://chunky-bacon.dev. Easy.