diff --git a/README.md b/README.md
index e08ed4b..80ff164 100644
--- a/README.md
+++ b/README.md
@@ -25,6 +25,12 @@
- Databases Intro, Relational Databases, NoSQL Databases, Databases & Shared Responsibility on AWS, AWS RDS Overview, Amazon Aurora, Amazon ElastiCache Overview, DynamoDB, Redshift Overview, Amazon EMR, Amazon Athena, Amazon QuickSight, DocumentDB, Amazon Neptune, Amazon QLDB
- [Other Compute Section](./sections/other_compute.md)
- What is Docker?, ECS, Fargate, ECR, What’s serverless?, Why AWS Lambda ?, Amazon API Gateway, AWS Batch, Batch vs Lambda, Amazon Lightsail, Lambda Summary
+- [Deploying and Managing Infrastructure at Scale](sections/deploying.md)
+ - What is CloudFormation?, AWS Cloud Development Kit (CDK), Developer problems on AWS, Typical architecture: Web App 3-tier, AWS Elastic Beanstalk Overview, AWS CodeDeploy, AWS CodeCommit, AWS CodeBuild, AWS CodePipeline, AWS CodeArtifact, AWS CodeStar, AWS Cloud9, AWS Systems Manager (SSM), AWS OpsWorks
+- [Global Infrastructure](sections/global_infrastructure.md)
+ - Why make a global application?, Amazon Route 53 Overview, Route 53 Routing Policies, AWS CloudFront, AWS Global Accelerator, AWS Outposts, AWS WaveLength, AWS Local Zones
+- [Cloud Integration](sections/cloud_integration.md)
+ - Amazon SQS - Simple Queue Service, Amazon Kinesis, Amazon SNS, Amazon MQ
## Practice Exams ( dumps )
diff --git a/sections/cloud_integration.md b/sections/cloud_integration.md
new file mode 100644
index 0000000..523e91e
--- /dev/null
+++ b/sections/cloud_integration.md
@@ -0,0 +1,80 @@
+# Cloud Integration
+
+- [Cloud Integration](#cloud-integration)
+ - [Section Introduction](#section-introduction)
+ - [Amazon SQS - Simple Queue Service](#amazon-sqs---simple-queue-service)
+ - [Amazon Kinesis](#amazon-kinesis)
+ - [Amazon SNS](#amazon-sns)
+ - [Amazon MQ](#amazon-mq)
+ - [Integration - Summary](#integration---summary)
+
+## Section Introduction
+
+- When we start deploying multiple applications, they will inevitably need to communicate with one another
+- There are two patterns of application communication
+ 1. Synchronous communications (application to application)
+ 2. Asynchronous / Event based (application to queue to application)
+- Synchronous between applications can be problematic if there are sudden spikes of traffic
+- What if you need to suddenly encode 1000 videos but usually it’s 10?
+- In that case, it’s better to **decouple** your applications:
+ - using SQS: queue model
+ - using SNS: pub/sub model
+ - using Kinesis: real-time data streaming model (out of scope for the exam)
+- These services can scale independently from our application!
+
+## Amazon SQS - Simple Queue Service
+
+- Oldest AWS offering (over 10 years old)
+- Fully managed service (~serverless), use to decouple applications
+- Allows decoupling of applications by sending and receiving messages asynchronously.
+- Supports standard queues (unlimited throughput) and FIFO queues (ordered processing).
+- Scales from 1 message per second to 10,000s per second
+- Default retention of messages: 4 days, maximum of 14 days
+- No limit to how many messages can be in the queue
+- Messages are deleted after they’re read by consumers
+- Low latency (<10 ms on publish and receive)
+- Consumers share the work to read messages & scale horizontally
+
+## Amazon Kinesis
+
+- **Kinesis = real-time big data streaming**
+- Managed service to collect, process, and analyze real-time streaming data at any scale
+- Too detailed for the Cloud Practitioner exam but good to know:
+ - Kinesis Data Streams: low latency streaming to ingest data at scale from hundreds of thousands of sources
+ - Kinesis Data Firehose: load streams into S3, Redshift, ElasticSearch, etc…
+ - Kinesis Data Analytics: perform real-time analytics on streams using SQL
+ - Kinesis Video Streams: monitor real-time video streams for analytics or ML
+
+## Amazon SNS
+
+- What if you want to send one message to many receivers?
+- Amazon Simple Notification Service is a notification service provided as part of Amazon Web Services since 2010. It provides a low-cost infrastructure for mass delivery of messages, predominantly to mobile users.
+- The “event publishers” only sends message to one SNS topic
+- As many “event subscribers” as we want to listen to the SNS topic notifications
+- Each subscriber to the topic will get all the messages
+- Up to 12,500,000 subscriptions per topic, 100,000 topics limit
+
+## Amazon MQ
+
+- SQS, SNS are “cloud-native” services, and they’re using proprietary protocols from AWS.
+- Traditional applications running from on-premise may use open protocols such as: MQTT, AMQP, STOMP, Openwire, WSS
+- When migrating to the cloud, instead of re-engineering the application to use SQS and SNS, we can use Amazon MQ
+- Amazon MQ = managed Apache ActiveMQ
+- Amazon MQ doesn’t “scale” as much as SQS / SNS
+- Amazon MQ runs on a dedicated machine (not serverless)
+- Amazon MQ has both queue feature (~SQS) and topic features (~SNS)
+
+## Integration - Summary
+
+- SQS:
+ - Queue service in AWS
+ - Multiple Producers, messages are kept up to 14 days
+ - Multiple Consumers share the read and delete messages when done
+ - Used to decouple applications in AWS
+- SNS:
+ - Notification service in AWS
+ - Subscribers: Email, Lambda, SQS, HTTP, Mobile…
+ - Multiple Subscribers, send all messages to all of them
+ - No message retention
+- Kinesis: real-time data streaming, persistence and analysis
+- Amazon MQ: managed Apache MQ in the cloud (MQTT, AMQP.. protocols)
diff --git a/sections/deploying.md b/sections/deploying.md
new file mode 100644
index 0000000..3ee1ef6
--- /dev/null
+++ b/sections/deploying.md
@@ -0,0 +1,305 @@
+# Deploying and Managing Infrastructure at Scale
+
+- [Deploying and Managing Infrastructure at Scale](#deploying-and-managing-infrastructure-at-scale)
+ - [What is CloudFormation?](#what-is-cloudformation)
+ - [Benefits of AWS CloudFormation](#benefits-of-aws-cloudformation)
+ - [CloudFormation Stack Designer](#cloudformation-stack-designer)
+ - [AWS Cloud Development Kit (CDK)](#aws-cloud-development-kit-cdk)
+ - [Example of AWS CDK (Python)](#example-of-aws-cdk-python)
+ - [Developer problems on AWS](#developer-problems-on-aws)
+ - [Typical architecture: Web App 3-tier](#typical-architecture-web-app-3-tier)
+ - [AWS Elastic Beanstalk Overview](#aws-elastic-beanstalk-overview)
+ - [Elastic Beanstalk vs CloudFormation](#elastic-beanstalk-vs-cloudformation)
+ - [Elastic Beanstalk - Health Monitoring](#elastic-beanstalk---health-monitoring)
+ - [AWS CodeDeploy](#aws-codedeploy)
+ - [AWS CodeCommit](#aws-codecommit)
+ - [AWS CodeBuild](#aws-codebuild)
+ - [AWS CodePipeline](#aws-codepipeline)
+ - [AWS CodeArtifact](#aws-codeartifact)
+ - [AWS CodeStar](#aws-codestar)
+ - [AWS Cloud9](#aws-cloud9)
+ - [AWS Systems Manager (SSM)](#aws-systems-manager-ssm)
+ - [How Systems Manager works](#how-systems-manager-works)
+ - [Systems Manager - SSM Session Manager](#systems-manager---ssm-session-manager)
+ - [AWS OpsWorks](#aws-opsworks)
+ - [OpsWorks Architecture](#opsworks-architecture)
+ - [Deployment - Summary](#deployment---summary)
+ - [Developer Services - Summary](#developer-services---summary)
+
+## What is CloudFormation?
+
+- CloudFormation is a declarative way of outlining your AWS Infrastructure, for any resources (most of them are supported).
+- For example, within a CloudFormation template, you say:
+ - I want a security group
+ - I want two EC2 instances using this security group
+ - I want an S3 bucket
+ - I want a load balancer (ELB) in front of these machines
+- Then CloudFormation creates those for you, in the right order, with the exact configuration that you specify
+
+### Benefits of AWS CloudFormation
+
+- Infrastructure as code
+ - No resources are manually created, which is excellent for control
+ - Changes to the infrastructure are reviewed through code
+- Cost
+ - Each resources within the stack is tagged with an identifier so you can easily see how much a stack costs you
+ - You can estimate the costs of your resources using the CloudFormation template
+ - Savings strategy: In Dev, you could automation deletion of templates at 5 PM and recreated at 8 AM, safely
+- Productivity
+ - Ability to destroy and re-create an infrastructure on the cloud on the fly
+ - Automated generation of Diagram for your templates!
+ - Declarative programming (no need to figure out ordering and orchestration)
+- Don’t re-invent the wheel
+ - Leverage existing templates on the web!
+ - Leverage the documentation
+- Supports (almost) all AWS resources:
+ - Everything we’ll see in this course is supported
+ - You can use “custom resources” for resources that are not supported
+
+### CloudFormation Stack Designer
+
+- Example: WordPress CloudFormation Stack
+- We can see all the resources
+- We can see the relations between the components
+
+## AWS Cloud Development Kit (CDK)
+
+- Define your cloud infrastructure using a familiar language:
+ - JavaScript/TypeScript, Python, Java, and .NET
+- The code is “compiled” into a CloudFormation template (JSON/YAML)
+- You can therefore deploy infrastructure and application runtime code together
+ - Great for Lambda functions
+ - Great for Docker containers in ECS / EKS
+
+### Example of AWS CDK (Python)
+
+To use AWS CDK, you need to install the CDK CLI and initialize a new CDK project. Once you have set up your project, you can start defining your cloud infrastructure using the programming language of your choice. Then, you can deploy the infrastructure to your AWS account using the CDK CLI.
+
+In below example, we define an AWS CDK stack that creates an S3 bucket with versioning enabled. To run this code, you'll need to have the AWS CDK for Python (`aws-cdk-lib`) installed in your Python environment. You can install it using pip:
+
+```python
+pip install aws-cdk-lib
+```
+
+Once you have the dependencies installed, you can execute this Python script, and it will create the S3 bucket in your AWS account based on the code defined in the `MyS3BucketStack` class.
+
+```python
+from aws_cdk import core
+from aws_cdk import aws_s3 as s3
+
+class MyS3BucketStack(core.Stack):
+ def __init__(self, scope: core.Construct, id: str, **kwargs) -> None:
+ super().__init__(scope, id, **kwargs)
+
+ # Define an S3 bucket
+ s3.Bucket(
+ self,
+ 'MyS3Bucket',
+ versioned=True,
+ removal_policy=core.RemovalPolicy.DESTROY
+ )
+
+# App entry point
+app = core.App()
+MyS3BucketStack(app, 'MyS3BucketStack')
+app.synth()
+```
+
+## Developer problems on AWS
+
+- Managing infrastructure
+- Deploying Code
+- Configuring all the databases, load balancers, etc
+- Scaling concerns
+- Most web apps have the same architecture (ALB + ASG)
+- All the developers want is for their code to run!
+- Possibly, consistently across different applications and environments
+
+## Typical architecture: Web App 3-tier
+
+
+
+## AWS Elastic Beanstalk Overview
+
+- Elastic Beanstalk is a developer centric view of deploying an application on AWS
+- It uses all the component’s we’ve seen before: EC2, ASG, ELB, RDS, etc…
+- But it’s all in one view that’s easy to make sense of!
+- We still have full control over the configuration
+- Beanstalk = Platform as a Service (PaaS)
+- Beanstalk is free but you pay for the underlying instances
+- Managed service
+ - Instance configuration / OS is handled by Beanstalk
+ - Deployment strategy is configurable but performed by Elastic Beanstalk
+ - Capacity provisioning
+ - Load balancing & auto-scaling
+- Application health-monitoring & responsiveness
+- Just the application code is the responsibility of the developer
+- Three architecture models:
+ - Single Instance deployment: good for dev
+ - LB + ASG: great for production or pre-production web applications
+ - ASG only: great for non-web apps in production (workers, etc..)
+
+- Support for many platforms:
+ - Go
+ - Java SE
+ - Java with Tomcat
+ - .NET on Windows Server with IIS
+ - Node.js
+ - PHP
+ - Python
+ - Ruby
+ - Packer Builder
+ - Single Container Docker
+ - Multi-Container Docker
+ - Preconfigured Docker
+- If not supported, you can write your custom platform.
+
+### Elastic Beanstalk vs CloudFormation
+
+AWS Elastic Beanstalk uses AWS CloudFormation underneath for managing the infrastructure and resources required to run your application. Then, what's the difference between them?
+
+| Parameters | AWS CloudFormation | AWS Elastic Beanstalk |
+| ------------- | ------------------------------------------------------ | ------------------------------------------------ |
+| Purpose | Infrastructure as Code | Platform as a Service |
+| Deployment | Define and manage AWS infrastructure | Simplified application deployment and scaling |
+| Control | High control and flexibility over underlying resources | Simplified management of underlying resources |
+| Management | Manages entire stack of resources | Abstracts infrastructure management |
+| Granularity | Fine-grained control over individual | Limited configuration of underlying resources |
+| Configuration | Uses JSON or YAML templates | Prescriptive configuration and environment setup |
+| Use Cases | Complex architectures and multi-service | Web application deployment and scaling |
+
+### Elastic Beanstalk - Health Monitoring
+
+- Health agent pushes metrics to CloudWatch
+- Checks for app health, publishes health events
+
+## AWS CodeDeploy
+
+- We want to deploy our application automatically
+- Works with EC2 Instances
+- Works with On-Premises Servers
+- Hybrid service
+- Servers / Instances must be provisioned and configured ahead of time with the CodeDeploy Agent
+
+## AWS CodeCommit
+
+- Before pushing the application code to servers, it needs to be stored somewhere
+- Developers usually store code in a repository, using the Git technology
+- A famous public offering is GitHub, AWS’ competing product is CodeCommit
+- CodeCommit:
+ - Source-control service that hosts Git-based repositories
+ - Makes it easy to collaborate with others on code
+ - The code changes are automatically versioned
+- Benefits:
+ - Fully managed
+ - Scalable & highly available
+ - Private, Secured, Integrated with AWS
+
+## AWS CodeBuild
+
+- Code building service in the cloud (name is obvious)
+- Compiles source code, run tests, and produces packages that are ready to be deployed (by CodeDeploy for example)
+- Benefits:
+ - Fully managed, serverless
+ - Continuously scalable & highly available
+ - Secure
+ - Pay-as-you-go pricing – only pay for the build time
+
+## AWS CodePipeline
+
+- Orchestrate the different steps to have the code automatically pushed to production
+- Code => Build => Test => Provision => Deploy
+- Basis for CICD (Continuous Integration & Continuous Delivery)
+- Benefits:
+ - Fully managed, compatible with CodeCommit, CodeBuild, CodeDeploy, Elastic Beanstalk, CloudFormation, GitHub, 3rd-party services (GitHub…) & custom plugins…
+ - Fast delivery & rapid updates
+
+- CodePipeline: orchestration layer
+ - CodeCommit => CodeBuild => CodeDeploy => Elastic Beanstalk
+
+## AWS CodeArtifact
+
+- Software packages depend on each other to be built (also called code dependencies), and new ones are created
+- Storing and retrieving these dependencies is called artifact management
+- Traditionally you need to setup your own artifact management system
+- CodeArtifact is a secure, scalable, and cost-effective artifact management for software development
+- Works with common dependency management tools such as Maven, Gradle, npm, yarn, twine, pip, and NuGet
+- Developers and CodeBuild can then retrieve dependencies straight from CodeArtifact
+
+## AWS CodeStar
+
+- Unified UI to easily manage software development activities in one place
+- “Quick way” to get started to correctly set-up CodeCommit, CodePipeline, CodeBuild, CodeDeploy, Elastic Beanstalk, EC2, etc…
+- Can edit the code ”in-the-cloud” using AWS Cloud9
+
+## AWS Cloud9
+
+- AWS Cloud9 is a cloud IDE (Integrated Development Environment) for writing, running and debugging code
+- “Classic” IDE (like IntelliJ, Visual Studio Code…) are downloaded on a computer before being used
+- A cloud IDE can be used within a web browser, meaning you can work on your projects from your office, home, or anywhere with internet with no setup necessary
+- AWS Cloud9 also allows for code collaboration in real-time (pair programming)
+
+## AWS Systems Manager (SSM)
+
+- Helps you manage your EC2 and On-Premises systems at scale
+- Another Hybrid AWS service
+- Get operational insights about the state of your infrastructure
+- Suite of 10+ products
+- Most important features are:
+ - Patching automation for enhanced compliance
+ - Run commands across an entire fleet of servers
+ - Store parameter configuration with the SSM Parameter Store
+- Works for both Windows and Linux OS
+
+### How Systems Manager works
+
+- We need to install the SSM agent onto the systems we control
+- Installed by default on Amazon Linux AMI & some Ubuntu AMI
+- If an instance can’t be controlled with SSM, it’s probably an issue with the SSM agent!
+- Thanks to the SSM agent, we can run commands, patch & configure our servers
+
+### Systems Manager - SSM Session Manager
+
+- Allows you to start a secure shell on your EC2 and on-premises servers
+- No SSH access, bastion hosts, or SSH keys needed
+- No port 22 needed (better security)
+- Supports Linux, macOS, and Windows
+- Send session log data to S3 or CloudWatch Logs
+
+## AWS OpsWorks
+
+- Chef & Puppet help you perform server configuration automatically, or repetitive actions
+- They work great with EC2 & On-Premises VM
+- AWS OpsWorks = Managed Chef & Puppet
+- It’s an alternative to AWS SSM
+- Only provision standard AWS resources:
+ - EC2 Instances, Databases, Load Balancers, EBS volumes…
+- **Chef or Puppet needed => AWS OpsWorks**
+
+### OpsWorks Architecture
+
+
+
+## Deployment - Summary
+
+- CloudFormation: (AWS only)
+ - Infrastructure as Code, works with almost all of AWS resources
+ - Repeat across Regions & Accounts
+- Beanstalk: (AWS only)
+ - Platform as a Service (PaaS), limited to certain programming languages or Docker
+ - Deploy code consistently with a known architecture: ex, ALB + EC2 + RDS
+- CodeDeploy (hybrid): deploy & upgrade any application onto servers
+- Systems Manager (hybrid): patch, configure and run commands at scale
+- OpsWorks (hybrid): managed Chef and Puppet in AWS
+
+## Developer Services - Summary
+
+- CodeCommit: Store code in private git repository (version controlled)
+- CodeBuild: Build & test code in AWS
+- CodeDeploy: Deploy code onto servers
+- CodePipeline: Orchestration of pipeline (from code to build to deploy)
+- CodeArtifact: Store software packages / dependencies on AWS
+- CodeStar: Unified view for allowing developers to do CICD and code
+- Cloud9: Cloud IDE (Integrated Development Environment) with collab
+- AWS CDK: Define your cloud infrastructure using a programming language
+
diff --git a/sections/global_infrastructure.md b/sections/global_infrastructure.md
new file mode 100644
index 0000000..e460c24
--- /dev/null
+++ b/sections/global_infrastructure.md
@@ -0,0 +1,238 @@
+# Global Infrastructure
+
+- [Global Infrastructure](#global-infrastructure)
+ - [Why make a global application?](#why-make-a-global-application)
+ - [Global AWS Infrastructure](#global-aws-infrastructure)
+ - [Global Applications in AWS](#global-applications-in-aws)
+ - [Amazon Route 53 Overview](#amazon-route-53-overview)
+ - [Route 53 - Diagram for A Record](#route-53---diagram-for-a-record)
+ - [Route 53 Routing Policies](#route-53-routing-policies)
+ - [simple routing policy](#simple-routing-policy)
+ - [weighted routing policy](#weighted-routing-policy)
+ - [latency routing policy](#latency-routing-policy)
+ - [failover routing policy](#failover-routing-policy)
+ - [AWS CloudFront](#aws-cloudfront)
+ - [CloudFront - Origins](#cloudfront---origins)
+ - [CloudFront vs S3 Cross Region Replication](#cloudfront-vs-s3-cross-region-replication)
+ - [S3 Transfer Acceleration](#s3-transfer-acceleration)
+ - [AWS Global Accelerator](#aws-global-accelerator)
+ - [AWS Global Accelerator vs CloudFront](#aws-global-accelerator-vs-cloudfront)
+ - [AWS Outposts](#aws-outposts)
+ - [AWS Outposts Benefits](#aws-outposts-benefits)
+ - [AWS WaveLength](#aws-wavelength)
+ - [AWS Local Zones](#aws-local-zones)
+ - [Global Applications - Summary](#global-applications---summary)
+
+## Why make a global application?
+
+- A global application is an application deployed in **multiple geographies**
+- On AWS: this could be **Regions** and / or **Edge Locations**
+- **Decreased Latency**
+ - Latency is the time it takes for a network packet to reach a server
+ - It takes time for a packet from Asia to reach the US
+ - Deploy your applications closer to your users to decrease latency, better experience
+- **Disaster Recovery (DR)**
+ - If an AWS region goes down (earthquake, storms, power shutdown, politics)…
+ - You can fail-over to another region and have your application still working
+ - A DR plan is important to increase the availability of your application
+- **Attack protection**: distributed global infrastructure is harder to attack
+
+### Global AWS Infrastructure
+
+- Regions: For deploying applications and infrastructure
+- Availability Zones: Made of multiple data centers
+- Edge Locations (Points of Presence): for content delivery as close as possible to users
+- More at:
+
+### Global Applications in AWS
+
+- **Global DNS: Route 53**
+ - Great to route users to the closest deployment with least latency
+ - Great for disaster recovery strategies
+- **Global Content Delivery Network (CDN): CloudFront**
+ - Replicate part of your application to AWS Edge Locations – decrease latency
+ - Cache common requests – improved user experience and decreased latency
+- **S3 Transfer Acceleration**
+ - Accelerate global uploads & downloads into Amazon S3
+- **AWS Global Accelerator:**
+ - Improve global application availability and performance using the AWS global network
+
+## Amazon Route 53 Overview
+
+- Route53 is a Managed DNS (Domain Name System)
+- DNS is a collection of rules and records which helps clients understand how to reach a server through URLs.
+- In AWS, the most common records are:
+ - www.google.com => 12.34.56.78 == A record (IPv4)
+ - www.google.com => 2001:0db8:85a3:0000:0000:8a2e:0370:7334 == AAAA IPv6
+ - search.google.com => www.google.com == CNAME: hostname to hostname
+ - example.com => AWS resource == Alias (ex: ELB, CloudFront, S3, RDS, etc…)
+
+### Route 53 - Diagram for A Record
+
+
+
+
+
+## Route 53 Routing Policies
+
+Need to know them at a high-level for the Cloud Practitioner Exam
+
+- simple routing policy
+- weighted routing policy
+- latency routing policy
+- failover routing policy
+
+### simple routing policy
+
+- Use for a single resource that performs a given function for your domain
+- for example, a web server that serves content for the example.com website.
+- You can use simple routing to create records in a private hosted zone
+
+### weighted routing policy
+
+- Use to route traffic to multiple resources in proportions that you specify.
+- You can use weighted routing to create records in a private hosted zone.
+
+### latency routing policy
+
+- Use when you have resources in multiple AWS Regions and you want to route traffic to the region that provides the best latency.
+- You can use latency routing to create records in a private hosted zone.
+
+### failover routing policy
+
+- Use when you want to configure active-passive failover.
+- You can use failover routing to create records in a private hosted zone.
+
+## AWS CloudFront
+
+- Content Delivery Network (CDN)
+- **Improves read performance, content is cached at the edge**
+- Improves users experience
+- 216 Point of Presence globally (edge locations)
+- DDoS protection (because worldwide), integration with Shield, AWS Web Application Firewall
+- Source:
+
+### CloudFront - Origins
+
+- S3 bucket
+ - For distributing files and caching them at the edge
+ - Enhanced security with CloudFront Origin Access Identity (OAI)
+ - CloudFront can be used as an ingress (to upload files to S3)
+- Custom Origin (HTTP)
+ - Application Load Balancer
+ - EC2 instance
+ - S3 website (must first enable the bucket as a static S3 website)
+ - Any HTTP backend you want
+
+### CloudFront vs S3 Cross Region Replication
+
+| CloudFront | S3 Cross Region Replication |
+| -------------------------------------------------------------- | -------------------------------------------------------------------------------------- |
+| Global Edge network | Must be setup for each region you want replication to happen |
+| Files are cached for a TTL (Time to Live) (maybe a day) | Files are updated in near real-time, Read only |
+| **Great for static content that must be available everywhere** | **Great for dynamic content that needs to be available at low-latency in few regions** |
+
+### S3 Transfer Acceleration
+
+- Increase transfer speed by transferring file to an AWS edge location which will forward the data to the S3 bucket in the target region
+- if we try to upload file to Australia S3 bucket it will take time using CloudFront we can rescue time.
+- File in USA -> Edge Location(USA) -> S3 Bucket(Australia)
+- Test the tool at:
+
+## AWS Global Accelerator
+
+- Improve global application availability and performance using the AWS global network
+- Leverage the AWS internal network to optimize the route to your application (60% improvement)
+- 2 Anycast IP are created for your application and traffic is sent through Edge Locations
+- The Edge locations send the traffic to your application
+- Test the tool at:
+
+### AWS Global Accelerator vs CloudFront
+
+- They both use the AWS global network and its edge locations around the world
+- Both services integrate with AWS Shield for DDoS protection.
+- CloudFront – Content Delivery Network
+ - Improves performance for your cacheable content (such as images and videos)
+ - Content is served at the edge
+- Global Accelerator
+ - No caching, proxying packets at the edge to applications running in one or more AWS Regions.
+ - Improves performance for a wide range of applications over TCP or UDP
+ - Good for HTTP use cases that require static IP addresses
+ - Good for HTTP use cases that required deterministic, fast regional failover
+
+## AWS Outposts
+
+- **Hybrid Cloud**: businesses that keep an on - premises infrastructure alongside a cloud infrastructure
+- Therefore, two ways of dealing with IT systems: • One for the AWS cloud (using the AWS console, CLI, and AWS APIs)
+- One for their on-premises infrastructure
+- **AWS Outposts are “server racks”** that offers the same AWS infrastructure, services, APIs & tools to build your own applications on-premises just as in the cloud
+- **AWS will setup and manage “Outposts Racks”** within your on-premises infrastructure and you can start leveraging AWS services on-premises
+- You are responsible for the Outposts Rack physical security
+
+### AWS Outposts Benefits
+
+- Low-latency access to on-premises systems
+- Local data processing
+- Data residency
+- Easier migration from on-premises to the cloud
+- Fully managed service
+- Some services that work on Outposts:
+ - EC2
+ - EBS
+ - S3
+ - EKS
+ - ECS
+ - RDS
+ - EMR
+
+## AWS WaveLength
+
+- WaveLength Zones are infrastructure deployments embedded within the telecommunications providers’ datacenters at the edge of the 5G networks
+- Brings AWS services to the edge of the 5G networks
+- Example: EC2, EBS, VPC…
+- Ultra-low latency applications through 5G networks
+- Traffic doesn’t leave the Communication Service Provider’s (CSP) network
+- High-bandwidth and secure connection to the parent AWS Region
+- No additional charges or service agreements
+- Use cases: Smart Cities, ML-assisted diagnostics, Connected Vehicles, Interactive Live Video Streams, AR/VR, Real-time Gaming
+
+## AWS Local Zones
+
+- Places AWS compute, storage, database, and other selected AWS services closer to end users to run latency-sensitive
+applications
+- Extend your VPC to more locations – “Extension of an AWS Region”
+- Compatible with EC2, RDS, ECS, EBS, ElastiCache, Direct Connect …
+- Example:
+ - AWS Region: N. Virginia (us-east-1)
+ - AWS Local Zones: Boston, Chicago, Dallas, Houston, Miami
+
+## Global Applications - Summary
+
+- Global DNS: Route 53
+ - Great to route users to the closest deployment with least latency
+ - Great for disaster recovery strategies
+- Global Content Delivery Network (CDN): CloudFront
+ - Replicate part of your application to AWS Edge Locations – decrease latency
+ - Cache common requests – improved user experience and decreased latency
+- S3 Transfer Acceleration
+ - Accelerate global uploads & downloads into Amazon S3
+- AWS Global Accelerator
+ - Improve global application availability and performance using the AWS global network
+- AWS Outposts
+ - Deploy Outposts Racks in your own Data Centers to extend AWS services
+- AWS WaveLength
+ - Brings AWS services to the edge of the 5G networks
+ - Ultra-low latency applications
+- AWS Local Zones
+ - Bring AWS resources (compute, database, storage, …) closer to your users
+ - Good for latency-sensitive applications