Heroku
Heroku is a cloud hosting company that streamlines the process of maintaining and upgrading a server. Heroku lets app developers focus on writing code, rather than having to spend most of their time worrying about servers, deployment, ongoing operations, or scaling.
Deploy Your App Easily
Heroku (pronounced “her-Oh-koo”) is a cloud hosting platform as a service (PaaS) that makes the process of building and deploying websites and web applications fast, easy, and uncomplicated. Encouraging and facilitating developer productivity is the company’s core principle.
With Heroku, you don’t have to worry about infrastructure, so you can focus on perfecting your application with the sure knowledge that it can be deployed and maintained swiftly and without fuss. First developed back in mid 2007, Heroku benefits from being one of the first cloud platforms, tried and true.
Originally developed only for the Ruby programming language, it has since come to support Node.Js, Python, as well as Scala, Clojure, PHP, and Perl. Besides the standard PostgreSQL, Heroku also supports MongoDB, Redis, and several other noSQL database types.
Hosting in the Cloud
Applications running on the Heroku server use the Heroku DNS Server to direct to their application domain. Each of the application containers, processes called Dynos, are distributed across a “Dyno grid” consisting of several servers. Thus, each Dyno is safely isolated from all the rest.
Application repository pushes are handled by Heroku’s Git server for authorized users. You can instantly deploy with a Git push, and Heroku performs the build of your application using your build scripts.
Scalablility and Easy Upkeep
Heroku provides scalable cloud hosting for web applications. With Heroku, a web application can handle large bursts of traffic without a highly-configured or highly-maintained dedicated server. A web developer can use Heroku to build an easy to maintain, robust web application that scales well with traffic.
A developer is able to deploy your site without the extra overhead of maintaining a server. Thus it takes less time for your app to go live, less maintenance to maintain your app, and less time to make changes.
Heroku provides a comprehensive but intuitive tutorial, which allows you to start in minutes, The first 750 computation hours are free of charge, which means you that can have one Dyno per month at no cost.
The full list of Heroku’s features can be found here, but you can also read a quick summary of the most salient points below:
- Add-ons: Add-ons are independant services that easily integrate with the Heroku platform. These range from database solutions such as MongoHQ to transactional email solutions such as Mandrill.
- Buildpacks: Buildpacks are a collection of scripts used to compile app dependencies for Heroku. They allow you to use any language for your application.
- Deploy with Git: Heroku is deployed with Git. When you deploy your Heroku app via git, Heroku builds your app according to your build pack.
- Roll Back Releases: Because Heroku is deployed with Git, each release is tracked. If a release is broken, you may easily roll back your application to an earlier release.
- Configuration: Through Heroku you can manage environment-specific information, such as database or email passwords. These can be relayed to your app via config variables, keeping your information secure.