Architecting for the Cloud Flashcards
What are the benefits of Cloud Computing over Traditional Computing?
- IT assets as Provisioned Resources
You don’t need to purchase any resource, you can just install it - Global, Available and Scalable Capacity
Cloud Computing is around the world - Higher Lever Managed Services
You can start working with whatever you want regardless of you having expertise or not in the technology by using high-level services. - Built-in Security
Nowadays it’s safer to host in AWS them handling it yourself - Architecting for costs
You can design your environment to cost-effective - Operations on AWS
You can re-architect the entire application by reutilizing resources or in the same AWS env.
What are ways of scale-out your application?
- Stateless Application
Using lambda functions - Distribute load to multiple nodes
If you can distribute the load to multiple nodes (by creating RDS read replicas for example) - Stateless Components
Instead of storing informations in the server you can store in the users browser (cookies) - Stateful Components
When you need the information the user included in your database - Implement Session Affinity
A sticky session would block you for a particular EC2 instance - Implement Distributed Processing
By using Elastic Map Reduce
What’s Elastic Map Reduce?
Allows you to have a fleet of EC2 that will process a large number of jobs in concurrency
What are ways of instantiating compute resources?
By:
1. Bootstraping:
We don’t need to configure an EC2 instance every time we need one
- Golden Images:
When implementing autoscaling groups for one application we can simply take a “screenshot” of one instance to deploy a new one - Containers
- Hybrid
What is Infrastructure as Code?
It’s the CloudFormation: We can configure the whole stack of code by only setting it up
What are Amazon’s Infrastructure Management and Deployment resources?
AWS Elastic Beanstalk
E2 Auto Recovery
AWS System Manager
Autoscaling
What are Amazon’s Alarms and Events resources?
Amazon CloudWatch alarms
Amazon CloudWatch Events
AWS lambda scheduled events
AWS WAF security automations
What does Amazon’s recommend for loose coupling infrastructures?
- Well defined interfaces
Amazon API Gateway - Service Discovery
Implement Service Discovery - Asynchronous Integration
- Distributed Systems Best Practice
Graceful Failure in Practice
What are Amazon’s “Services not Servers”
Managed Services
Serverless Architectures