Contents
Which Compute Service Do I Need?
Amazon offers a broad range of Compute options. Picking the right one is an important first step that will affect your application performance, cost, and future scalability. In this course, let’s go ahead and explore the various options available and see how we can match these with our business requirements.
Learning Objectives
- Virtual machine options for your applications
- Options for new software development projects
- Serverless options where AWS manages the infrastructure for you
- Containers that can be deployed in a traditional server or serverless fashion
Intended Audience
- Those new to cloud computing
- Those facing the challenge of deploying an application to AWS with very specific business requirements
Prerequisites
- You don’t need any prior knowledge of AWS to benefit from this course
- It’s helpful to be familiar with your business requirements
It's always a delicate balance to find that sweet spot where your application is highly available to your audience and at the same time you're not paying for expensive servers that are underutilized. Let's consider Compute options from the perspective of cost savings and availability. Spot Instances. For Compute intensive application, Spot Instances are the absolute best choice. It simply means buying Amazon's unused EC2 compute capacity at a huge discount. One disadvantage is that if your application requires near 100% availability, then this may not be the optimal solution since Amazon can reclaim the Spot Instances from you on short notice. That said, they can be combined with other Compute options to meet the availability requirements at a higher cost. Serverless. If your application only runs short-lived transactions, serverless may be able to save you a lot in cost.
However, if your applications run long processes or has a very high transaction load, say hundreds or even thousands of transactions per second, then serverless may not be the best choice. Auto Scaling. Auto Scaling not only helps with cost savings, but also helps with availability because it forces you to use more than one availability zone in your design in order to take full advantage of it. Reserve Instances. This is simply the action of pre-paying for your EC2 compute capacity if you know you'll be using it for several months or even years. This is guaranteed capacity, which in contrast with the Spot Instances, these are guaranteed to be available to you. It's a great cost saving options right in the middle between on-demand pricing and a spot instance pricing. As with everything in life, the actual answer to making your application highly available and also running it at a low cost lies somewhere between these options. For instance, combining auto scaling with spot pricing gives you higher availability while keeping costs down.

Software Development has been my craft for over 2 decades. In recent years, I was introduced to the world of "Infrastructure as Code" and Cloud Computing.
I loved it! -- it re-sparked my interest in staying on the cutting edge of technology.
Colleagues regard me as a mentor and leader in my areas of expertise and also as the person to call when production servers crash and we need the App back online quickly.
My primary skills are:
★ Software Development ( Java, PHP, Python and others )
★ Cloud Computing Design and Implementation
★ DevOps: Continuous Delivery and Integration