Introduction and Domain Overview
Introduction- Domain Two - Designing Performant Architectures
This domain comprises 24% of the exam and has the following requirements:
2.1 Choose performant storage and databases.
2.2 Apply caching to improve performance.
2.3 Design solutions for elasticity and scalability.
In this module we are going to extend our understanding of how we select and use AWS services together to create performant and scalable solutions.
- [Instructor] Hello and welcome to Designing Performant Architectures, Domain Two of the Solution Architect Associate learning path. In this module, we are going to extend our understanding of how to select and use AWS Services together to create performant and scalable solutions. So what do we mean by performant? Essentially, we are talking about scalability when we talk about performance. It is the ability of a solution to scale quickly to meet demand that makes it performant. The context of this domain is knowing how and when to use AWS Services in a solution design to create the best outcome for your end user. When should we use Amazon RDS over using Amazon DynamoDB, for example? When should we look to use ElastiCache to improve performance and durability? Should we be using applications running on an EC2 instance or deploy functions using or running in AWS Lambda for example? As an architect, we need to be able to quickly match and apply the appropriate AWS Services to best meet requirements. So to build this design confidence, we first need to extend our knowledge of some of the key AWS Services within the context of the Solution Architect Associate exam. We will learn more about selecting the best storage options for an on-premise backup and disaster recovery situation. Caching can increase durability and performance when we expect a high number of read requests will be made to our database or its back end service. Amazon ElastiCache is an AWS web service that makes it easy to deploy, operate, and scale a distributed in memory cache environment in the cloud so we'll learn about Memcached and Redis in our introduction to ElastiCache course before we create an ElastiCache node in a hands-on lab. Elasticity is a key component of being performant and combining an elastic load balancer with an auto scaling group is a proven way of designing an environment to meet spikes in demand. So we practice creating an auto scale group behind an elastic load balancer in a hands-on lab. As a highly scalable NoSQL data store, DynamoDB is a powerful tool for ensuring performance and reliability in any solution design. So we extend our knowledge of how to work with DynamoDB and then put our learning to use configuring DynamoDB triggers with AWS Lambda functions. We then practice processing Simple Notification Service notifications with the AWS Lambda service, another combination of AWS Services that can be automated to increase performance and scalability. Now monitoring performance is a key way of ensuring your environment is performing as anticipated and AWS CloudTrail on Amazon CloudWatch can be used together to trigger alarms or trigger auto scale events. So we learn to monitor AWS CloudTrail events using Amazon CloudWatch. At the completion of this group of lectures, and courses and quizzes, you'll be able to choose performant storage and databases, apply caching to improve performance, and design solutions for elasticity and scalability. Okay, if you're ready, let's get started!
About the Author
Head of Content
Andrew is an AWS certified professional who is passionate about helping others learn how to use and gain benefit from AWS technologies. Andrew has worked for AWS and for AWS technology partners Ooyala and Adobe. His favorite Amazon leadership principle is "Customer Obsession" as everything AWS starts with the customer. Passions around work are cycling and surfing, and having a laugh about the lessons learnt trying to launch two daughters and a few start ups.