Simple Notification Service (SNS)
Kinesis + MQ
Databases & Analytics
Launch Types

On-demand Instances:

  • For when you can't predict how long/short the job is going to be and for jobs which can't tolerate failure.
  • Pay-as-you-go.
  • Billing:
    • For Linux = billed every second, after the first minute.
    • All other operating systems = billed per hour.

Reserved Instances:

  • For steady usage apps (like databases).
  • Long-term (a minimum of 1 year).
  • Has up to a 75% discount compared to on-demand.
  • Can buy it for 1 year to 3 years
    • 3 years RI has a much higher discount than 1 year RI.
  • Can pay all upfront, partially upfront and no upfront.
    • All upfront has a much higher discount than no upfront.
  • There are also 2 other types of RIs:
    • Convertible RIs
      • Can change the type of instance type, e.g. t2.micro to c5.large.
      • These have up to a 54% discount.
    • Scheduled RIs
      • Can launch within the time window you need them but you still need to reserve it.

Spot Instances:

  • If you can be flexible about when your applications run and if your applications can be interrupted.
    • For example: image processing, batch jobs and any distributed workloads.
  • Have a 90% discount compared to on-demand.
    • But that's because they can be lost at any point of time if someone else pays higher for it.

Dedicated Hosts:

  • For companies with strict compliance requirements.
  • It's a whole physical server dedicated to you.
    • Very expensive.
  • Allocated for 3 years so they need to be committed to.
  • Access to the underlying hardware.

Dedicated Instances:

  • They are just dedicated hosts but you don't have access to the underlying hardware.
  • Pay by the hour.