This article will explore the differences and similarities between Heroku and AWS. It will cover each provider’s core features, pricing structure, use cases, and featured clients.
Before diving into Heroku and AWS, it’s essential to understand some technical concepts regarding cloud computing.
The first concept to understand is IaaS or Infrastructure as a Service. This cloud model allows users to move from on-premise deployment and owing servers to a model that they pay the servers by the usage.
Generally speaking, users are trading a CAPEX investment in acquiring servers for an OPEX expenditure and paying by the month.
Other benefits of the IaaS model include scalability, security, multiple regions, uptime, capital expenditure reduction, and self-service provisioning.
A second cloud model to understand is PaaS or Platform as a Service. This cloud model will provide similar functionalities of the IaaS model plus operating systems, middleware, and runtime.
IaaS delivers users direct control over OS – Operating Systems, and PaaS offers users more significant development speed and ease of use. PaaS platforms will also deliver a managed services versus self-service approach of a IaaS.
That said, we can categorize AWS as an IaaS provider. However, it offers multiple products and has some PaaS offerings like AWS Beanstalk.
On the other hand, Heroku is a PaaS provider. However, it also offers additional products like managed databases and add-ons.
Now that you know the basics let’s explore AWS and Heroku cloud services with further details.
- IaaS and PaaS are two different cloud models
- AWS is mainly an IaaS platform
- Heroku is a PaaS provider
- Heroku runs the platform using AWS as the underlying infrastructure
- AWS also has PaaS offerings like AWS Elastic Beanstalk