Joshua's Docs - Cloud Services Overview - Offerings and Frameworks

Different offerings

Quick explainer between some common types: Types of Cloud Computing

Infrastructure Providers

These are the "big players" that are ultimately providing the bare-metal service that everyone else is usually using under the hood.

PaaS / Full-stack / Polygot Platforms

These are PaaS that do things like allow you to deploy a full-stack application without worrying about manually scaling resources, managing infrastructure, or system updates.

  • Heroku
  • Render (commonly recommended as the modern alternative to Heroku)
    • You can deploy a containerized app with pretty much just a Dockerfile!
  • DigitalOcean
    • Although DigitalOcean also fits under the infrastructure provider category / AWS competitor, they also offer a lot of specialized services that fit into this category, such as App Platform
  • Railway
  • NodeChef

Abstraction Layers Over AWS (or other IaaS)

AWS offerings (and other lower-level IaaS platforms) are really powerful, but often at the cost of complexity and decision fatigue. To the point where you might need a third party service just to understand your costs.

There are a few service that exist as abstraction layers over AWS, which might be a good fit if you are looking for easier deployments and more predicable pricing:

  • Flightcontrol
    • Automated deployment layer / IAC over AWS. Aims to make AWS as easy to use as Heroku.
    • Same team behind Blitz.js framework
  • Begin
    • You can "eject" at any time if you want to leave Begin, and Begin will provide you with the Architect code (which compiles into native AWS CloudFormation IAC) so you can go back to your own management of AWS
  • Serverless Cloud
    • Enterprise offering from Serverless, not to be confused with the free and open Serverless Framework / CLI.
  • Terraform Cloud
    • Terraform Cloud is the enterprise offering from HashiCorp; a managed service wrapper that integrates well with Terraform CLI and other products (similar approach to Serverless Cloud). Not to be confused with the free Terraform CLI (see below)

IaC (Infrastructure as Code) Development Frameworks

Not to be confused with PaaS offerings, these are abstraction layers which let you manage your infrastructure (such as AWS) as code, so that spinning up an app can be a highly automated and repeatable process.

    • You can define write IaC as SAM templates (compiles to native AWS CloudFormation) or with AWS CDK (also compiles to CloudFormation)
    • Only supports AWS
  • AWS CDK (Cloud Development Kit)
    • Similar to AWS SAM templates, but instead of declarative code, you can write with your favorite imperative programming language. Like SAM, also compiles to CloudFormation.
    • For AWS SAM vs CDK vs CloudFormation, see this FAQ
  • Serverless (aka Serverless Framework)
    • Supports many different infrastructures (AWS, GCP, etc.)
  • Architect (aka arc)
    • Compiles to native AWS CloudFormation
    • Only supports AWS
  • Terraform CLI
    • Uses HCL (HashiCorp Configuration Language)
    • Supports many different infrastructures (AWS, GCP, etc.)
    • CDK for Terraform lets you write your IaC in your favorite programming language, similar to AWS CDK

localstack is worth a mention for local testing.

Static / JAMStack Cloud Hosting

These are mostly PaaS that are offering things like one-click deployments for mostly static websites, PWAs, and JAMStack based sites. Think things like React + Lambdas.


Links to various free tier limits:

See also:

Self Hosting PaaS

Good options:


Serverless Database Options

Some of these have already been mentioned elsewhere on this page, but it seems worth having this as a separate category too

Helpful numbers to remember

  • Executions in an average month, given cron of * * * * * (every minute): 43,800
Markdown Source Last Updated:
Wed Apr 27 2022 04:59:46 GMT+0000 (Coordinated Universal Time)
Markdown Source Created:
Mon Jan 06 2020 20:35:34 GMT+0000 (Coordinated Universal Time)
© 2024 Joshua Tzucker, Built with Gatsby