
Image via CrunchBase
The client user of Heroku is usually a developer focusing on Ruby on Rails. Due to its specific user case this platform is tuned with great effort to ease the deployment and publishing of a web project.
Heroku exposes two management systems for developers. One is the online account management; the other is the command line tool.
Online account management:
This is via web interface. The developer can see clearly how many sites he has created on behalf of his account. Besides, from this interface, the developer can do all the resource allocation - to upgrade the account, to add more workers/dynos etc. Add-ons are handled as well. There are lots of add-ons: full text search, cron jobs etc. Some of them are free; while some of the professional features have to be charged accordingly.
Command line tool:
The client of Heroku platform is enabled via Ruby Gems. And it is a command line tool. Therefore, the command line takes most of developers' time. For example, to create a Heroku application, one can invoke 'heroku create'. The command line tool is a superset of the web interface above. The developer can invoke the heroku command to change the workers/dynos as well. The detailed features include ('heroku help' shows every specific command used.):
- Manage addons
- Manage bundles
- Manage database:
- choose different database capabilities
- shared DB or dedicated DB
- pull the database into a local database
- push a local database into app's remote database
- reset the database for the app
- Web service start/stop/restart
- Manage scaling: add/remove dynos/workers
- Manage domain names: add/remove a custom domain name
Overall status:
Heroku shows an overall status of how the system goes. Take a look at this link: http://status.heroku.com
Summary:
Heroku is a terrific platform for developers with Ruby on Rails in mind. It provides 'Ruby on Rails as a Service'. Therefore, it frees developers from worrying the deployment of their web projects. The developers need only to focus on the code. The concepts presented by Heroku are minimal. It abstracts the infrastructure underneath to concepts like 'dyno' and 'worker'. And these two parameters can be changed on the go. In a word, Heroku is easy to use and really cool for Ruby on Rails developers!
To take a look at my little 'hello world' demo.

![Reblog this post [with Zemanta]](http://img.zemanta.com/reblog_e.png?x-id=3d1d648b-403d-460a-9f02-7f226a68dcdf)



