MyPage is a personalized page based on your interests.The page is customized to help you to find content that matters you the most.


I'm not curious

Heroku vs Amazon AWS for Deploying Ruby on Rails Applications

Published on 02 August 13
1274
0
0

Heroku is growing as a defacto platform for Ruby on Rails and nodejs powered apps due to its ready made packaged solution on top of AWS. Its infact giving a tough competition to AWS when it comes to hosting RoR apps. A Ruby on Rails Development Company looking for an easy deployment of RoR will definitely look forward to heroku as a first choice in hosting platform.


However, as with the case with everything in this world, pros come with a fewer or more cons. Here we take a look at analyzing both the platforms subjectively.

AWS

Heroku

AWS offer IaaS I.e Infrastructure as a Service. IaaS gives you components you need in order to build things on top of it

Heroku offer Paas I.e. a Platform as a Service. PaaS gives you an environment where you just push code and some basic configuration and get a running application

You have to deploy your application yourself, either through Chef recipes, Capistrano, or manually.

You can deploy your app by simply Pushing your code into git repo provided by heroku.

You have to administer the system yourself. EC2 has machine images of popular distros such as Ubuntu that are easily launched, but after that itâs up to you to keep it up to date and secure.

No need to do anything Heroku does it for you.

Scaling horizontally (i.e. launching multiple app instances) is not as easy as with Heroku where itâs just a matter of moving a slider on their web interface. Youâd better get familiar with Chef if you want to scale up and down frequently. This seems like a big drawback but in practice we rarely adjust the number of running instances for an app.

You can easily install multiple horizontal app instances on heroku.

AWS is more expensive for the basic offering. There is a free tier that will give you one free micro instance for the first year (only available when you first sign up) but this is not as generous as Herokuâs free, unlimited, single dyno apps. The bigger apps would be much better off in terms of costing on top of AWS.

Heroku is free to use for first dyno. The cost will increase very steeply as you increase dynos. At this point you will be made to think ease vs money ⦠;) !!

AWS is not easy as Heroku is simply because its not managed. Heroku is also not managed by default but the tools offered are much more sophisticated.

Easy to use web interface is beautiful, the CLI client works well for the most part (except it canât manage multiple Heroku accounts), and itâs easy to add other services through add-ons.

You have the control over the file sytem in AWS. Its just like your dedicated server with root access.

Can't save any file on heroku explicitly, until you don't know filesysytem of heroku

We can easily upgrade hardware requirements according to our needs in case of AWS

No way to increase RAM, storage, or CPU performance. Additional storage must be hosted separately through a service such as Amazon S3. Application performance can only be improved by increasing the number of running dynos. Heroku automatically load balances and routes visitors to all available dynos.

You can run services like redis or delayed job easily on AWS

No other services can be run on dynos. Dynos are strictly for application processes. Databases, background workers, and other services usually cost extra through Herokuâs add-ons or third party services.

You can install any system software like wkhtmltopdf or image magic easilly on AWS.

No way to install system software. Heroku does provide some commonly-used packages such as Imagemagick, but if you need anything else, youâll have to resort to hacks.


With that said, Both Heroku and Amazon are amazing hosting solutions and both of them have revolutionzed the way hosting is done. However, this is not a decision to take blindly but one should analyze very subjectively the various points to reach on the conclusion for the hosting to use. Hope this post goes a long way in helping you make your decision on the same.




Heroku is growing as a defacto platform for Ruby on Rails and nodejs powered apps due to its ready made packaged solution on top of AWS. Its infact giving a tough competition to AWS when it comes to hosting RoR apps. A Ruby on Rails Development Company looking for an easy deployment of RoR will definitely look forward to heroku as a first choice in hosting platform.

However, as with the case with everything in this world, pros come with a fewer or more cons. Here we take a look at analyzing both the platforms subjectively.

AWS

Heroku

AWS offer IaaS I.e Infrastructure as a Service. IaaS gives you components you need in order to build things on top of it

Heroku offer Paas I.e. a Platform as a Service. PaaS gives you an environment where you just push code and some basic configuration and get a running application

You have to deploy your application yourself, either through Chef recipes, Capistrano, or manually.

You can deploy your app by simply Pushing your code into git repo provided by heroku.

You have to administer the system yourself. EC2 has machine images of popular distros such as Ubuntu that are easily launched, but after that itâs up to you to keep it up to date and secure.

No need to do anything Heroku does it for you.

Scaling horizontally (i.e. launching multiple app instances) is not as easy as with Heroku where itâs just a matter of moving a slider on their web interface. Youâd better get familiar with Chef if you want to scale up and down frequently. This seems like a big drawback but in practice we rarely adjust the number of running instances for an app.

You can easily install multiple horizontal app instances on heroku.

AWS is more expensive for the basic offering. There is a free tier that will give you one free micro instance for the first year (only available when you first sign up) but this is not as generous as Herokuâs free, unlimited, single dyno apps. The bigger apps would be much better off in terms of costing on top of AWS.

Heroku is free to use for first dyno. The cost will increase very steeply as you increase dynos. At this point you will be made to think ease vs money ⦠;) !!

AWS is not easy as Heroku is simply because its not managed. Heroku is also not managed by default but the tools offered are much more sophisticated.

Easy to use web interface is beautiful, the CLI client works well for the most part (except it canât manage multiple Heroku accounts), and itâs easy to add other services through add-ons.

You have the control over the file sytem in AWS. Its just like your dedicated server with root access.

Can't save any file on heroku explicitly, until you don't know filesysytem of heroku

We can easily upgrade hardware requirements according to our needs in case of AWS

No way to increase RAM, storage, or CPU performance. Additional storage must be hosted separately through a service such as Amazon S3. Application performance can only be improved by increasing the number of running dynos. Heroku automatically load balances and routes visitors to all available dynos.

You can run services like redis or delayed job easily on AWS

No other services can be run on dynos. Dynos are strictly for application processes. Databases, background workers, and other services usually cost extra through Herokuâs add-ons or third party services.

You can install any system software like wkhtmltopdf or image magic easilly on AWS.

No way to install system software. Heroku does provide some commonly-used packages such as Imagemagick, but if you need anything else, youâll have to resort to hacks.

With that said, Both Heroku and Amazon are amazing hosting solutions and both of them have revolutionzed the way hosting is done. However, this is not a decision to take blindly but one should analyze very subjectively the various points to reach on the conclusion for the hosting to use. Hope this post goes a long way in helping you make your decision on the same.

This blog is listed under Open Source , Cloud Computing and Development & Implementations Community

Post a Comment

Please notify me the replies via email.

Important:
  • We hope the conversations that take place on MyTechLogy.com will be constructive and thought-provoking.
  • To ensure the quality of the discussion, our moderators may review/edit the comments for clarity and relevance.
  • Comments that are promotional, mean-spirited, or off-topic may be deleted per the moderators' judgment.
You may also be interested in
Awards & Accolades for MyTechLogy
Winner of
REDHERRING
Top 100 Asia
Finalist at SiTF Awards 2014 under the category Best Social & Community Product
Finalist at HR Vendor of the Year 2015 Awards under the category Best Learning Management System
Finalist at HR Vendor of the Year 2015 Awards under the category Best Talent Management Software
Hidden Image Url

Back to Top