Heroku Overview – What is Heroku?

Heroku is a Platform as a Service (PaaS) that is headquartered in San Francisco, California and is a
subsidiary of Salesforce.com. Heroku has been in development since 2007 and was one of the first cloud platforms available for use. In addition, it also supports multiple programming languages including Ruby, Java, Node.JS, and Python.

Heroku Logo

Similar to other PaaS solutions, Heroku allows developers to spend all of their time developing
application code, while they manage servers, deployment, and scalability. Furthermore, they also have a
huge add-on collection, which gives developers a larger pool of resources to work from.

Heroku Architecture

Multi-Tenant- Heroku provides the hosting environment and servers, while ensuring continuous
platform improvements.

Management-Each part of the Heroku architecture is invisibly managed by them, which allows them to
maintain a clean interface for deploying code.

Curation-Each layer of the Heroke architecture is curated regularly, which provides developers with
properly integrated software and ensures best practices.

Heroku Infrastructure

There are six layers that make up the Heroku Infrastructure, which include:

1. HTTP Reverse Proxy

2. HTTP Cache

3. Routing Mesh

4. Dynos

5. Database

6. Cache

The following image outlines these six layers/components:
Heroku Infrastructure

Operating Heroku

Here is a brief overview for operating Heroku.

Visibility- Heroku’s Logplex provides great visibility into application operations.

Scaling-Heroku portrays itself as the most powerful scaling platform available by giving developers full-control, instant spin-up, infinite capacity, and individual scaling for each application component.

Dynos- According to the Heroku website “Dynos are fully-isolated, erosion-resistant processes running
on and kept alive by the dyno manifold. Dynos receive web requests from routing, connect to app
resources via environment variables, and write output to Logplex.”

Process Types-Applications are defined by developers using Procfile. Once this is done, users have the
ability to scale each component independently, which allows applications to scale with the need of re-architecting.

Heroku Process

Heroku Customers

Heroku has become one of the premier Platform as a Service (PaaS) cloud deployment services that
includes thousands of current customers. The following list breaks down a few of the more recognizable
ones:

1) Hipster
2) Best Buy
3) Cloud App
4) Date.fm
5) Shopify
6) FlightCaster
7) ELC Technologies

The Tough Questions

You can’t make them all happy, especially when it comes to customer support. One user claimed that it took over 12 hours to respond to an urgent request. However, she also pointed out that she would have no problem paying extra for more dedicated customer service access.

It does seem that Heroku has indeed been paying close attention to the needs of their users. A quick look
on their website shows that they have developed an incident platform that helps users track progress
with real-time updates. Additionally, they offer 24×7 premium support.

So did Heroku re-work their support system so that 12 hr. response times no longer happen? It appears so, but we’ll give it some time and then do a few searches to see what others are experiencing.

Data Centers

Heroku houses its physical infrastructure within Amazon’s secure data centers and uses the Amazon
Web Service (AWS) technology.