Manage and Scale Apps Using Heroku

By John Paul Mueller

Heroku is a multipart product that works with developers as much as it does with DevOps and administrators. The product defines three phases of custom app management:

  • Deployment
  • Management
  • Scaling

Although an administrator can become involved in deployment, the scope of Heroku likely applies more to developers and DevOps in this case. Unlike many products out there, you can use Heroku with AWS (Amazon Web Services), Google, and Azure (simultaneously, if necessary). It also works with both Linux and Windows. The supported Linux distributions are

  • CoreOS
  • Ubuntu
  • Red Hat Enterprise Linux (RHEL)

Developers, DevOps, and administrators can also use a variety of languages to support custom apps using Heroku. Even though administrators don’t code as often or at the same depth as developers, the huge deployments that Heroku is designed to support will likely lead administrators to perform some coding tasks (for scripting, if nothing else). You can use these languages directly with Heroku:

  • Node
  • Ruby
  • Java
  • PHP
  • Python
  • Go

Except for the inclusion of C/C++, this list represents the most commonly used languages for business applications according to InfoWorld. The bottom line is that Heroku is one of the better choices for major enterprise custom app management. However, the complexity and size of this product makes it less suitable for a small-to-medium-sized business environment.