ApiaryActive
Try: pause · settings · learn · wipe
← Community / Reading Room
H
computing · 3 min read

Heroku

Heroku is a cloud platform as a service (PaaS) that allows developers to build, deploy, and manage applications without worrying about the underlying…

Overview

Heroku is a cloud platform as a service (PaaS) that allows developers to build, deploy, and manage applications without worrying about the underlying infrastructure. Founded in 2007 by Adam Wiggins, Joshua McKenty, and Adam Gross, Heroku is a subsidiary of Salesforce, a multinational technology company. The platform provides a set of tools and services that enable developers to focus on writing code, while Heroku handles the provisioning and management of servers, databases, and other resources.

History

Heroku was launched in June 2007 as a side project of Adam Wiggins, who was working at the time at Engine Yard, a company that provided PaaS solutions to developers. The initial version of Heroku was built using Ruby on Rails, a popular web framework, and was designed to provide a simple and easy-to-use platform for developers to deploy and manage their applications. In 2010, Heroku raised $10.8 million in funding from investors such as Bessemer Venture Partners and Felicis Ventures.

In 2010, Heroku acquired Iron.io, a company that provided a platform for building and deploying scalable, real-time applications. The acquisition expanded Heroku's capabilities and allowed the company to offer a more comprehensive set of tools and services to developers. In 2016, Salesforce acquired Heroku for $530 million, expanding its cloud infrastructure and PaaS offerings.

Features and Functionality

Heroku provides a range of features and functionality that enable developers to build, deploy, and manage applications with ease. Some of the key features of Heroku include:

  • dynos: Heroku's core unit of deployment, a dyno is a lightweight container that can run a single process. Developers can create and manage dynos to scale their applications up or down as needed.
  • buildpacks: Heroku's buildpacks are pre-configured templates that allow developers to create and deploy applications using popular frameworks and languages, such as Ruby on Rails, Node.js, and Python.
  • addons: Heroku's addons provide a range of services, including databases, caching, and messaging, that developers can use to enhance their applications.
  • pipelines: Heroku's pipelines allow developers to automate the deployment and testing of their applications, using a range of tools and services, such as GitHub and CircleCI.

Heroku also provides a range of tools and services for developers to monitor and manage their applications, including:

  • logs: Heroku's logs provide a detailed record of application activity, allowing developers to diagnose issues and optimize performance.
  • metrics: Heroku's metrics provide a range of performance data, including CPU usage, memory usage, and request latency.

Use Cases

Heroku is widely used by developers and organizations of all sizes, from small startups to large enterprises. Some common use cases for Heroku include:

  • web applications: Heroku is well-suited for building and deploying web applications, using popular frameworks and languages, such as Ruby on Rails and Node.js.
  • APIs: Heroku provides a range of tools and services for building and deploying APIs, including support for RESTful APIs and GraphQL.
  • real-time applications: Heroku's Iron.io acquisition expanded the company's capabilities in real-time applications, enabling developers to build and deploy scalable, real-time applications.
  • machine learning: Heroku provides a range of tools and services for building and deploying machine learning models, including support for popular frameworks, such as TensorFlow and PyTorch.

Competitors

Heroku faces competition from a range of other cloud PaaS providers, including:

  • AWS Elastic Beanstalk: Amazon Web Services' Elastic Beanstalk provides a range of tools and services for building and deploying web applications.
  • Google App Engine: Google App Engine provides a range of tools and services for building and deploying web applications, using popular frameworks and languages, such as Java and Python.
  • Microsoft Azure App Service: Microsoft Azure's App Service provides a range of tools and services for building and deploying web applications, using popular frameworks and languages, such as .NET and Node.js.

Security

Heroku provides a range of security features and tools to help developers protect their applications and data. Some of the key security features of Heroku include:

  • SSL/TLS: Heroku provides SSL/TLS encryption for all applications, ensuring that sensitive data is transmitted securely.
  • authentication and authorization: Heroku provides a range of authentication and authorization tools, including support for OAuth and OpenID Connect.
  • data encryption: Heroku provides data encryption for all stored data, using industry-standard algorithms and protocols.

Overall, Heroku is a widely-used and respected cloud PaaS provider, offering a range of tools and services that enable developers to build, deploy, and manage applications with ease.

Frequently asked
What is Heroku about?
Heroku is a cloud platform as a service (PaaS) that allows developers to build, deploy, and manage applications without worrying about the underlying…
What should you know about overview?
Heroku is a cloud platform as a service (PaaS) that allows developers to build, deploy, and manage applications without worrying about the underlying infrastructure. Founded in 2007 by Adam Wiggins, Joshua McKenty, and Adam Gross, Heroku is a subsidiary of Salesforce, a multinational technology company. The platform…
What should you know about history?
Heroku was launched in June 2007 as a side project of Adam Wiggins, who was working at the time at Engine Yard, a company that provided PaaS solutions to developers. The initial version of Heroku was built using Ruby on Rails, a popular web framework, and was designed to provide a simple and easy-to-use platform for…
What should you know about features and Functionality?
Heroku provides a range of features and functionality that enable developers to build, deploy, and manage applications with ease. Some of the key features of Heroku include:
What should you know about use Cases?
Heroku is widely used by developers and organizations of all sizes, from small startups to large enterprises. Some common use cases for Heroku include:
References & sources
  1. Apiary Reading RoomOpen, cited knowledge base — funded to keep bee & practical research free.
From the Apiary Reading Room. Opinion & editorial — not financial advice. We don't overclaim.
More from the Reading Room