SlideShare uma empresa Scribd logo
1 de 60
Baixar para ler offline
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Best Practices for Building Multi-region,
Active-active Serverless Application
Adrian Hornsby
Technical Evangelist
Amazon Web Services
S R V 4 2 5
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Breakout repeats
Wednesday
Best Practices for Building Multi-Region, Active-Active Serverless Applications
2:30 PM - Venetian, Level 2, Venetian H
Friday
Best Practices for Building Multi-Region, Active-Active Serverless Applications
10:00 AM - Mirage, Antigua A
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Before we get started, let’s take a look at some
fundamentals.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
About availability
Availability Downtime per year
99% (2-nines) 3 days 15 hours
99.9% (3-nines) 8 hours 45 minutes
99.99% (4-nines) 52 minutes
99.999% (5-nines) 5 minutes
99.9999% (6-nines) 31 seconds
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Availability in series
Part X Part Y
A = Ax Ay
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Availability in series
Component Availability Downtime
X 99% (2-nines) 3 days 15 hours
Y 99.99% (4-nines) 52 minutes
X and Y Combined 98.99% 3 days 16 hours 33 minutes
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Availability in parallel
A = 1 – (1 – Ax)2
Part X
Part X
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Availability in parallel
Component Availability Downtime
X 99% (2-nines) 3 days 15 hours
Two X in parallel 99.99% (4-nines) 52 minutes
Three X in parallel 99.9999% (6-nines) 31 seconds
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Component redundancy increases availability
significantly!
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
18 Geographic Regions
55 Availability Zones (AZs)
4 regions and 12 more Availability Zones announced
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS Region and Availability Zones
Region
Availability Zone a Availability Zone b Availability Zone c
data center
data center
data center
data center
data center
data center
data center
data center
data center
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Multi-AZ architecture
Region
Availability zone a Availability zone b Availability zone c
Application
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Serverless components
Region
Availability zone a Availability zone b Availability zone c
Serverless Components
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
No servers to provision
or manage
Scales with usage
Never pay for idle Availability and fault tolerance
built in
Why serverless components??
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Why build a multi-region active-active
architecture?
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Improve latency for end-users
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Disaster recovery
Applications in
US West
Applications in
US East
Users from
San Francisco
Users from
New York
Service 1
Service 2
Service 3
Service 4
Service 1
Service 2
Service 3
Service 4
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Customers doing multi-region active-active
architecture?
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Netflix 2013
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Netflix 2016
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Prerequisites to building a multi-region
architecture.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
CAP Theorem
Consistency Availability Partition Tolerance
Data is consistent.
All nodes see the same state.
Every request is non-failing. Service still responds as expected
if some nodes crash.
Distributed System
In the presence of a network partition, you
must choose between consistency and
availability!
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Embrase eventual consistency
… if no new updates are made to a
given data item, eventually all
accesses to that item will return
the last updated value.
Availability
An eventually consistent system can
return any value before it converges!!
https://en.wikipedia.org/wiki/Eventual_consistency
Distributed System
Every request is non-failing.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Secure and reliable global network
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Global routing
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Routing policies with Route 53
RegionRegion
Application Application
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Latency based routing
RegionRegion
Application Application
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Geo-based routing
Region us-east-1Region us-west-2
Application Application
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Weighted round robin routing
Region us-east-1Region us-west-2
Application Application
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
DNS failover
Region us-east-1Region us-west-2
Application Application
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Region us-east-1
Region us-west-2
https://globalddb.adhorn.me
Regional
API
Endpoint
Custom
Domain
Name
Regional
API
Endpoint
Custom
Domain
Name
API Gateway
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Build high performance, globally distributed applications
Low latency reads & writes to locally available tables
Disaster proof with multi-region redundancy
Easy to set up and no application rewrites required
Globally dispersed users
Replica (N. America)
Replica (Europe)
Replica (Asia)
Global App
Global Table
Amazon DynamoDB Global Tables
Fully managed, multi-master, multi-region database
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Amazon S3 cross-region replication
Bucket with
objects
Bucket with
objects
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Multi-region multi-VPC connectivity
Region Region
VPC VPC
VPC
VPC
VPC
VPC
Peering
Amazon Backbone
Peering
https://aws.amazon.com/answers/networking/aws-multiple-region-multi-vpc-connectivity/
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Testing multi-region architecture.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
GameDay at Amazon
https://www.youtube.com/watch?v=zoz0ZjfrQ9s
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Chaos engineering
https://github.com/Netflix/SimianArmy
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Region us-east-1
Region us-west-2
Global Table
https://globalddb.adhorn.me
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Region us-east-1
Region us-west-2
Global Table
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Region us-east-1
Region us-west-2
Global Table
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Region us-east-1
Region us-west-2
Global Table
Amazon Route 53: Traffic Policy
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Health checks with Route 53
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Shallow health check
Instance
Cache node
Email
database
Cluster
Are you healthy?
yes
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Shallow health check
Instance
Cache node
Email
database
Cluster
Are you healthy?
yes
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Deep health check
Instance
Cache node
Email
database
Cluster
Are you healthy?
yes
Are you healthy?
yes
yes
yes
yes
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Deep health check
Instance
Cache node
Email
database
Cluster
Are you healthy?
no
Are you healthy?
no
yes
yes
yes
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Region us-east-1
Region us-west-2
Global Table
https://globalddb.adhorn.me
Voilà!
Thank you!
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Adrian Hornsby
@adhorn
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.

Mais conteúdo relacionado

Mais procurados

[NEW LAUNCH!] Advancing Software Procurement in a Containerized World with th...
[NEW LAUNCH!] Advancing Software Procurement in a Containerized World with th...[NEW LAUNCH!] Advancing Software Procurement in a Containerized World with th...
[NEW LAUNCH!] Advancing Software Procurement in a Containerized World with th...Amazon Web Services
 
DevOps Concepts for Data Science (DEV347-R2) - AWS re:Invent 2018
DevOps Concepts for Data Science (DEV347-R2) - AWS re:Invent 2018DevOps Concepts for Data Science (DEV347-R2) - AWS re:Invent 2018
DevOps Concepts for Data Science (DEV347-R2) - AWS re:Invent 2018Amazon Web Services
 
Have Your Front End and Monitor It, Too (ANT303) - AWS re:Invent 2018
Have Your Front End and Monitor It, Too (ANT303) - AWS re:Invent 2018Have Your Front End and Monitor It, Too (ANT303) - AWS re:Invent 2018
Have Your Front End and Monitor It, Too (ANT303) - AWS re:Invent 2018Amazon Web Services
 
Scale up a Web Application (ARC409-R) - AWS re:Invent 2018
Scale up a Web Application (ARC409-R) - AWS re:Invent 2018Scale up a Web Application (ARC409-R) - AWS re:Invent 2018
Scale up a Web Application (ARC409-R) - AWS re:Invent 2018Amazon Web Services
 
Improve Accessibility Using Machine Learning (AIM332) - AWS re:Invent 2018
Improve Accessibility Using Machine Learning (AIM332) - AWS re:Invent 2018Improve Accessibility Using Machine Learning (AIM332) - AWS re:Invent 2018
Improve Accessibility Using Machine Learning (AIM332) - AWS re:Invent 2018Amazon Web Services
 
Building an Augmented Reality Owner's Manual (AMT315) - AWS re:Invent 2018
Building an Augmented Reality Owner's Manual (AMT315) - AWS re:Invent 2018Building an Augmented Reality Owner's Manual (AMT315) - AWS re:Invent 2018
Building an Augmented Reality Owner's Manual (AMT315) - AWS re:Invent 2018Amazon Web Services
 
Making Hybrid Work for You: Getting into the Cloud Fast (GPSTEC308) - AWS re:...
Making Hybrid Work for You: Getting into the Cloud Fast (GPSTEC308) - AWS re:...Making Hybrid Work for You: Getting into the Cloud Fast (GPSTEC308) - AWS re:...
Making Hybrid Work for You: Getting into the Cloud Fast (GPSTEC308) - AWS re:...Amazon Web Services
 
[NEW LAUNCH!] Introducing AWS Elemental MantaRay (CTD325) - AWS re:Invent 2018
[NEW LAUNCH!] Introducing AWS Elemental MantaRay (CTD325) - AWS re:Invent 2018[NEW LAUNCH!] Introducing AWS Elemental MantaRay (CTD325) - AWS re:Invent 2018
[NEW LAUNCH!] Introducing AWS Elemental MantaRay (CTD325) - AWS re:Invent 2018Amazon Web Services
 
Running Enterprise Test/Dev on Amazon EC2 Spot Instances (CMP407-R1) - AWS re...
Running Enterprise Test/Dev on Amazon EC2 Spot Instances (CMP407-R1) - AWS re...Running Enterprise Test/Dev on Amazon EC2 Spot Instances (CMP407-R1) - AWS re...
Running Enterprise Test/Dev on Amazon EC2 Spot Instances (CMP407-R1) - AWS re...Amazon Web Services
 
Build a Voice-Based Chatbot for Your Amazon Connect Contact Center (BAP401-R1...
Build a Voice-Based Chatbot for Your Amazon Connect Contact Center (BAP401-R1...Build a Voice-Based Chatbot for Your Amazon Connect Contact Center (BAP401-R1...
Build a Voice-Based Chatbot for Your Amazon Connect Contact Center (BAP401-R1...Amazon Web Services
 
Build a Kubernetes Cluster with Amazon EKS
Build a Kubernetes Cluster with Amazon EKSBuild a Kubernetes Cluster with Amazon EKS
Build a Kubernetes Cluster with Amazon EKSAmazon Web Services
 
Querying Data in Place with AWS Object Storage Features and Analytics Tools (...
Querying Data in Place with AWS Object Storage Features and Analytics Tools (...Querying Data in Place with AWS Object Storage Features and Analytics Tools (...
Querying Data in Place with AWS Object Storage Features and Analytics Tools (...Amazon Web Services
 
Failing Successfully in the Cloud: AWS Approach to Resilient Design (ARC335-R...
Failing Successfully in the Cloud: AWS Approach to Resilient Design (ARC335-R...Failing Successfully in the Cloud: AWS Approach to Resilient Design (ARC335-R...
Failing Successfully in the Cloud: AWS Approach to Resilient Design (ARC335-R...Amazon Web Services
 
Microsoft Licensing: Choose Your Own Adventure (WIN332) - AWS re:Invent 2018
Microsoft Licensing: Choose Your Own Adventure (WIN332) - AWS re:Invent 2018Microsoft Licensing: Choose Your Own Adventure (WIN332) - AWS re:Invent 2018
Microsoft Licensing: Choose Your Own Adventure (WIN332) - AWS re:Invent 2018Amazon Web Services
 
Build Workflows with Amazon CloudFront, Amazon Route 53, & Lambda@Edge (CTD40...
Build Workflows with Amazon CloudFront, Amazon Route 53, & Lambda@Edge (CTD40...Build Workflows with Amazon CloudFront, Amazon Route 53, & Lambda@Edge (CTD40...
Build Workflows with Amazon CloudFront, Amazon Route 53, & Lambda@Edge (CTD40...Amazon Web Services
 
Secure Your Site: Use CDN Security Features to Protect Your Content & Infrast...
Secure Your Site: Use CDN Security Features to Protect Your Content & Infrast...Secure Your Site: Use CDN Security Features to Protect Your Content & Infrast...
Secure Your Site: Use CDN Security Features to Protect Your Content & Infrast...Amazon Web Services
 
How to Use Predictive Scaling (API331-R1) - AWS re:Invent 2018
How to Use Predictive Scaling (API331-R1) - AWS re:Invent 2018How to Use Predictive Scaling (API331-R1) - AWS re:Invent 2018
How to Use Predictive Scaling (API331-R1) - AWS re:Invent 2018Amazon Web Services
 
Maximizing Throughput and Performance on Amazon EFS (STG406) - AWS re:Invent ...
Maximizing Throughput and Performance on Amazon EFS (STG406) - AWS re:Invent ...Maximizing Throughput and Performance on Amazon EFS (STG406) - AWS re:Invent ...
Maximizing Throughput and Performance on Amazon EFS (STG406) - AWS re:Invent ...Amazon Web Services
 
Another Week, Another Million Containers on Amazon EC2 (CMP376) - AWS re:Inve...
Another Week, Another Million Containers on Amazon EC2 (CMP376) - AWS re:Inve...Another Week, Another Million Containers on Amazon EC2 (CMP376) - AWS re:Inve...
Another Week, Another Million Containers on Amazon EC2 (CMP376) - AWS re:Inve...Amazon Web Services
 
[NEW LAUNCH!] How-to: Amazon RDS on VMware and Hybrid Database Architecture (...
[NEW LAUNCH!] How-to: Amazon RDS on VMware and Hybrid Database Architecture (...[NEW LAUNCH!] How-to: Amazon RDS on VMware and Hybrid Database Architecture (...
[NEW LAUNCH!] How-to: Amazon RDS on VMware and Hybrid Database Architecture (...Amazon Web Services
 

Mais procurados (20)

[NEW LAUNCH!] Advancing Software Procurement in a Containerized World with th...
[NEW LAUNCH!] Advancing Software Procurement in a Containerized World with th...[NEW LAUNCH!] Advancing Software Procurement in a Containerized World with th...
[NEW LAUNCH!] Advancing Software Procurement in a Containerized World with th...
 
DevOps Concepts for Data Science (DEV347-R2) - AWS re:Invent 2018
DevOps Concepts for Data Science (DEV347-R2) - AWS re:Invent 2018DevOps Concepts for Data Science (DEV347-R2) - AWS re:Invent 2018
DevOps Concepts for Data Science (DEV347-R2) - AWS re:Invent 2018
 
Have Your Front End and Monitor It, Too (ANT303) - AWS re:Invent 2018
Have Your Front End and Monitor It, Too (ANT303) - AWS re:Invent 2018Have Your Front End and Monitor It, Too (ANT303) - AWS re:Invent 2018
Have Your Front End and Monitor It, Too (ANT303) - AWS re:Invent 2018
 
Scale up a Web Application (ARC409-R) - AWS re:Invent 2018
Scale up a Web Application (ARC409-R) - AWS re:Invent 2018Scale up a Web Application (ARC409-R) - AWS re:Invent 2018
Scale up a Web Application (ARC409-R) - AWS re:Invent 2018
 
Improve Accessibility Using Machine Learning (AIM332) - AWS re:Invent 2018
Improve Accessibility Using Machine Learning (AIM332) - AWS re:Invent 2018Improve Accessibility Using Machine Learning (AIM332) - AWS re:Invent 2018
Improve Accessibility Using Machine Learning (AIM332) - AWS re:Invent 2018
 
Building an Augmented Reality Owner's Manual (AMT315) - AWS re:Invent 2018
Building an Augmented Reality Owner's Manual (AMT315) - AWS re:Invent 2018Building an Augmented Reality Owner's Manual (AMT315) - AWS re:Invent 2018
Building an Augmented Reality Owner's Manual (AMT315) - AWS re:Invent 2018
 
Making Hybrid Work for You: Getting into the Cloud Fast (GPSTEC308) - AWS re:...
Making Hybrid Work for You: Getting into the Cloud Fast (GPSTEC308) - AWS re:...Making Hybrid Work for You: Getting into the Cloud Fast (GPSTEC308) - AWS re:...
Making Hybrid Work for You: Getting into the Cloud Fast (GPSTEC308) - AWS re:...
 
[NEW LAUNCH!] Introducing AWS Elemental MantaRay (CTD325) - AWS re:Invent 2018
[NEW LAUNCH!] Introducing AWS Elemental MantaRay (CTD325) - AWS re:Invent 2018[NEW LAUNCH!] Introducing AWS Elemental MantaRay (CTD325) - AWS re:Invent 2018
[NEW LAUNCH!] Introducing AWS Elemental MantaRay (CTD325) - AWS re:Invent 2018
 
Running Enterprise Test/Dev on Amazon EC2 Spot Instances (CMP407-R1) - AWS re...
Running Enterprise Test/Dev on Amazon EC2 Spot Instances (CMP407-R1) - AWS re...Running Enterprise Test/Dev on Amazon EC2 Spot Instances (CMP407-R1) - AWS re...
Running Enterprise Test/Dev on Amazon EC2 Spot Instances (CMP407-R1) - AWS re...
 
Build a Voice-Based Chatbot for Your Amazon Connect Contact Center (BAP401-R1...
Build a Voice-Based Chatbot for Your Amazon Connect Contact Center (BAP401-R1...Build a Voice-Based Chatbot for Your Amazon Connect Contact Center (BAP401-R1...
Build a Voice-Based Chatbot for Your Amazon Connect Contact Center (BAP401-R1...
 
Build a Kubernetes Cluster with Amazon EKS
Build a Kubernetes Cluster with Amazon EKSBuild a Kubernetes Cluster with Amazon EKS
Build a Kubernetes Cluster with Amazon EKS
 
Querying Data in Place with AWS Object Storage Features and Analytics Tools (...
Querying Data in Place with AWS Object Storage Features and Analytics Tools (...Querying Data in Place with AWS Object Storage Features and Analytics Tools (...
Querying Data in Place with AWS Object Storage Features and Analytics Tools (...
 
Failing Successfully in the Cloud: AWS Approach to Resilient Design (ARC335-R...
Failing Successfully in the Cloud: AWS Approach to Resilient Design (ARC335-R...Failing Successfully in the Cloud: AWS Approach to Resilient Design (ARC335-R...
Failing Successfully in the Cloud: AWS Approach to Resilient Design (ARC335-R...
 
Microsoft Licensing: Choose Your Own Adventure (WIN332) - AWS re:Invent 2018
Microsoft Licensing: Choose Your Own Adventure (WIN332) - AWS re:Invent 2018Microsoft Licensing: Choose Your Own Adventure (WIN332) - AWS re:Invent 2018
Microsoft Licensing: Choose Your Own Adventure (WIN332) - AWS re:Invent 2018
 
Build Workflows with Amazon CloudFront, Amazon Route 53, & Lambda@Edge (CTD40...
Build Workflows with Amazon CloudFront, Amazon Route 53, & Lambda@Edge (CTD40...Build Workflows with Amazon CloudFront, Amazon Route 53, & Lambda@Edge (CTD40...
Build Workflows with Amazon CloudFront, Amazon Route 53, & Lambda@Edge (CTD40...
 
Secure Your Site: Use CDN Security Features to Protect Your Content & Infrast...
Secure Your Site: Use CDN Security Features to Protect Your Content & Infrast...Secure Your Site: Use CDN Security Features to Protect Your Content & Infrast...
Secure Your Site: Use CDN Security Features to Protect Your Content & Infrast...
 
How to Use Predictive Scaling (API331-R1) - AWS re:Invent 2018
How to Use Predictive Scaling (API331-R1) - AWS re:Invent 2018How to Use Predictive Scaling (API331-R1) - AWS re:Invent 2018
How to Use Predictive Scaling (API331-R1) - AWS re:Invent 2018
 
Maximizing Throughput and Performance on Amazon EFS (STG406) - AWS re:Invent ...
Maximizing Throughput and Performance on Amazon EFS (STG406) - AWS re:Invent ...Maximizing Throughput and Performance on Amazon EFS (STG406) - AWS re:Invent ...
Maximizing Throughput and Performance on Amazon EFS (STG406) - AWS re:Invent ...
 
Another Week, Another Million Containers on Amazon EC2 (CMP376) - AWS re:Inve...
Another Week, Another Million Containers on Amazon EC2 (CMP376) - AWS re:Inve...Another Week, Another Million Containers on Amazon EC2 (CMP376) - AWS re:Inve...
Another Week, Another Million Containers on Amazon EC2 (CMP376) - AWS re:Inve...
 
[NEW LAUNCH!] How-to: Amazon RDS on VMware and Hybrid Database Architecture (...
[NEW LAUNCH!] How-to: Amazon RDS on VMware and Hybrid Database Architecture (...[NEW LAUNCH!] How-to: Amazon RDS on VMware and Hybrid Database Architecture (...
[NEW LAUNCH!] How-to: Amazon RDS on VMware and Hybrid Database Architecture (...
 

Semelhante a Best Practices for Building Multi-Region, Active-Active Serverless Applications (SRV425-R1) - AWS re:Invent 2018

Building Global Multi-Region, Active-Active Serverless Backends
Building Global Multi-Region, Active-Active Serverless Backends Building Global Multi-Region, Active-Active Serverless Backends
Building Global Multi-Region, Active-Active Serverless Backends Amazon Web Services
 
[NEW LAUNCH!] Introduction to AWS Global Accelerator (NET330) - AWS re:Invent...
[NEW LAUNCH!] Introduction to AWS Global Accelerator (NET330) - AWS re:Invent...[NEW LAUNCH!] Introduction to AWS Global Accelerator (NET330) - AWS re:Invent...
[NEW LAUNCH!] Introduction to AWS Global Accelerator (NET330) - AWS re:Invent...Amazon Web Services
 
How AWS Minimizes the Blast Radius of Failures (ARC338) - AWS re:Invent 2018
How AWS Minimizes the Blast Radius of Failures (ARC338) - AWS re:Invent 2018How AWS Minimizes the Blast Radius of Failures (ARC338) - AWS re:Invent 2018
How AWS Minimizes the Blast Radius of Failures (ARC338) - AWS re:Invent 2018Amazon Web Services
 
建構全球跨區域 x Active-Active架構的無伺服器化後台服務
建構全球跨區域  x Active-Active架構的無伺服器化後台服務建構全球跨區域  x Active-Active架構的無伺服器化後台服務
建構全球跨區域 x Active-Active架構的無伺服器化後台服務Amazon Web Services
 
How to build scalable and resilient applications in the cloud - AWS Summit Ca...
How to build scalable and resilient applications in the cloud - AWS Summit Ca...How to build scalable and resilient applications in the cloud - AWS Summit Ca...
How to build scalable and resilient applications in the cloud - AWS Summit Ca...Amazon Web Services
 
Scaling up to and beyond 10M users
Scaling up to and beyond 10M usersScaling up to and beyond 10M users
Scaling up to and beyond 10M usersAmazon Web Services
 
Resiliency and Availability Design Patterns for the Cloud
Resiliency and Availability Design Patterns for the CloudResiliency and Availability Design Patterns for the Cloud
Resiliency and Availability Design Patterns for the CloudAmazon Web Services
 
Globalizing Player Accounts at Riot Games While Maintaining Availability (ARC...
Globalizing Player Accounts at Riot Games While Maintaining Availability (ARC...Globalizing Player Accounts at Riot Games While Maintaining Availability (ARC...
Globalizing Player Accounts at Riot Games While Maintaining Availability (ARC...Amazon Web Services
 
Keynote - Adrian Hornsby on Chaos Engineering
Keynote - Adrian Hornsby on Chaos EngineeringKeynote - Adrian Hornsby on Chaos Engineering
Keynote - Adrian Hornsby on Chaos EngineeringAmazon Web Services
 
[NEW LAUNCH!] How to Architect for Multi-Region Redundancy Using Anycast IPs ...
[NEW LAUNCH!] How to Architect for Multi-Region Redundancy Using Anycast IPs ...[NEW LAUNCH!] How to Architect for Multi-Region Redundancy Using Anycast IPs ...
[NEW LAUNCH!] How to Architect for Multi-Region Redundancy Using Anycast IPs ...Amazon Web Services
 
Amazon Polly와 Cloud9을 활용한 서버리스 웹 애플리케이션 및 CI/CD 배포 프로세스 구축 (김현수, AWS 솔루션즈 아키텍...
Amazon Polly와 Cloud9을 활용한 서버리스 웹 애플리케이션 및 CI/CD 배포 프로세스 구축 (김현수, AWS 솔루션즈 아키텍...Amazon Polly와 Cloud9을 활용한 서버리스 웹 애플리케이션 및 CI/CD 배포 프로세스 구축 (김현수, AWS 솔루션즈 아키텍...
Amazon Polly와 Cloud9을 활용한 서버리스 웹 애플리케이션 및 CI/CD 배포 프로세스 구축 (김현수, AWS 솔루션즈 아키텍...Amazon Web Services Korea
 
Operational Excellence with Containerized Workloads Using AWS Fargate (CON320...
Operational Excellence with Containerized Workloads Using AWS Fargate (CON320...Operational Excellence with Containerized Workloads Using AWS Fargate (CON320...
Operational Excellence with Containerized Workloads Using AWS Fargate (CON320...Amazon Web Services
 
Leadership Session: Networking (NET209-L) - AWS re:Invent 2018
Leadership Session: Networking (NET209-L) - AWS re:Invent 2018Leadership Session: Networking (NET209-L) - AWS re:Invent 2018
Leadership Session: Networking (NET209-L) - AWS re:Invent 2018Amazon Web Services
 
Breaking Containers: Chaos Engineering for Modern Applications on AWS (CON310...
Breaking Containers: Chaos Engineering for Modern Applications on AWS (CON310...Breaking Containers: Chaos Engineering for Modern Applications on AWS (CON310...
Breaking Containers: Chaos Engineering for Modern Applications on AWS (CON310...Amazon Web Services
 
Keynote - Chaos Engineering: Why breaking things should be practiced
Keynote - Chaos Engineering: Why breaking things should be practicedKeynote - Chaos Engineering: Why breaking things should be practiced
Keynote - Chaos Engineering: Why breaking things should be practicedAWS User Group Bengaluru
 
How to Build Multi-Region Applications in the Cloud: AWS Developer Workshop -...
How to Build Multi-Region Applications in the Cloud: AWS Developer Workshop -...How to Build Multi-Region Applications in the Cloud: AWS Developer Workshop -...
How to Build Multi-Region Applications in the Cloud: AWS Developer Workshop -...Amazon Web Services
 
Autonomous DevSecOps: Five Steps to a Self-Driving Cloud (ENT214-S) - AWS re:...
Autonomous DevSecOps: Five Steps to a Self-Driving Cloud (ENT214-S) - AWS re:...Autonomous DevSecOps: Five Steps to a Self-Driving Cloud (ENT214-S) - AWS re:...
Autonomous DevSecOps: Five Steps to a Self-Driving Cloud (ENT214-S) - AWS re:...Amazon Web Services
 
Chaos Engineering: Why Breaking Things Should Be Practised.
Chaos Engineering: Why Breaking Things Should Be Practised.Chaos Engineering: Why Breaking Things Should Be Practised.
Chaos Engineering: Why Breaking Things Should Be Practised.Adrian Hornsby
 

Semelhante a Best Practices for Building Multi-Region, Active-Active Serverless Applications (SRV425-R1) - AWS re:Invent 2018 (20)

Building Global Multi-Region, Active-Active Serverless Backends
Building Global Multi-Region, Active-Active Serverless Backends Building Global Multi-Region, Active-Active Serverless Backends
Building Global Multi-Region, Active-Active Serverless Backends
 
[NEW LAUNCH!] Introduction to AWS Global Accelerator (NET330) - AWS re:Invent...
[NEW LAUNCH!] Introduction to AWS Global Accelerator (NET330) - AWS re:Invent...[NEW LAUNCH!] Introduction to AWS Global Accelerator (NET330) - AWS re:Invent...
[NEW LAUNCH!] Introduction to AWS Global Accelerator (NET330) - AWS re:Invent...
 
How AWS Minimizes the Blast Radius of Failures (ARC338) - AWS re:Invent 2018
How AWS Minimizes the Blast Radius of Failures (ARC338) - AWS re:Invent 2018How AWS Minimizes the Blast Radius of Failures (ARC338) - AWS re:Invent 2018
How AWS Minimizes the Blast Radius of Failures (ARC338) - AWS re:Invent 2018
 
建構全球跨區域 x Active-Active架構的無伺服器化後台服務
建構全球跨區域  x Active-Active架構的無伺服器化後台服務建構全球跨區域  x Active-Active架構的無伺服器化後台服務
建構全球跨區域 x Active-Active架構的無伺服器化後台服務
 
How to build scalable and resilient applications in the cloud - AWS Summit Ca...
How to build scalable and resilient applications in the cloud - AWS Summit Ca...How to build scalable and resilient applications in the cloud - AWS Summit Ca...
How to build scalable and resilient applications in the cloud - AWS Summit Ca...
 
Scaling up to and beyond 10M users
Scaling up to and beyond 10M usersScaling up to and beyond 10M users
Scaling up to and beyond 10M users
 
Resiliency and Availability Design Patterns for the Cloud
Resiliency and Availability Design Patterns for the CloudResiliency and Availability Design Patterns for the Cloud
Resiliency and Availability Design Patterns for the Cloud
 
Globalizing Player Accounts at Riot Games While Maintaining Availability (ARC...
Globalizing Player Accounts at Riot Games While Maintaining Availability (ARC...Globalizing Player Accounts at Riot Games While Maintaining Availability (ARC...
Globalizing Player Accounts at Riot Games While Maintaining Availability (ARC...
 
Keynote - Adrian Hornsby on Chaos Engineering
Keynote - Adrian Hornsby on Chaos EngineeringKeynote - Adrian Hornsby on Chaos Engineering
Keynote - Adrian Hornsby on Chaos Engineering
 
[NEW LAUNCH!] How to Architect for Multi-Region Redundancy Using Anycast IPs ...
[NEW LAUNCH!] How to Architect for Multi-Region Redundancy Using Anycast IPs ...[NEW LAUNCH!] How to Architect for Multi-Region Redundancy Using Anycast IPs ...
[NEW LAUNCH!] How to Architect for Multi-Region Redundancy Using Anycast IPs ...
 
Amazon Polly와 Cloud9을 활용한 서버리스 웹 애플리케이션 및 CI/CD 배포 프로세스 구축 (김현수, AWS 솔루션즈 아키텍...
Amazon Polly와 Cloud9을 활용한 서버리스 웹 애플리케이션 및 CI/CD 배포 프로세스 구축 (김현수, AWS 솔루션즈 아키텍...Amazon Polly와 Cloud9을 활용한 서버리스 웹 애플리케이션 및 CI/CD 배포 프로세스 구축 (김현수, AWS 솔루션즈 아키텍...
Amazon Polly와 Cloud9을 활용한 서버리스 웹 애플리케이션 및 CI/CD 배포 프로세스 구축 (김현수, AWS 솔루션즈 아키텍...
 
Operational Excellence with Containerized Workloads Using AWS Fargate (CON320...
Operational Excellence with Containerized Workloads Using AWS Fargate (CON320...Operational Excellence with Containerized Workloads Using AWS Fargate (CON320...
Operational Excellence with Containerized Workloads Using AWS Fargate (CON320...
 
Leadership Session: Networking (NET209-L) - AWS re:Invent 2018
Leadership Session: Networking (NET209-L) - AWS re:Invent 2018Leadership Session: Networking (NET209-L) - AWS re:Invent 2018
Leadership Session: Networking (NET209-L) - AWS re:Invent 2018
 
Breaking Containers: Chaos Engineering for Modern Applications on AWS (CON310...
Breaking Containers: Chaos Engineering for Modern Applications on AWS (CON310...Breaking Containers: Chaos Engineering for Modern Applications on AWS (CON310...
Breaking Containers: Chaos Engineering for Modern Applications on AWS (CON310...
 
Best of AWS re:Invent 2017
Best of AWS re:Invent 2017Best of AWS re:Invent 2017
Best of AWS re:Invent 2017
 
Keynote - Chaos Engineering: Why breaking things should be practiced
Keynote - Chaos Engineering: Why breaking things should be practicedKeynote - Chaos Engineering: Why breaking things should be practiced
Keynote - Chaos Engineering: Why breaking things should be practiced
 
Chaos Engineering
Chaos EngineeringChaos Engineering
Chaos Engineering
 
How to Build Multi-Region Applications in the Cloud: AWS Developer Workshop -...
How to Build Multi-Region Applications in the Cloud: AWS Developer Workshop -...How to Build Multi-Region Applications in the Cloud: AWS Developer Workshop -...
How to Build Multi-Region Applications in the Cloud: AWS Developer Workshop -...
 
Autonomous DevSecOps: Five Steps to a Self-Driving Cloud (ENT214-S) - AWS re:...
Autonomous DevSecOps: Five Steps to a Self-Driving Cloud (ENT214-S) - AWS re:...Autonomous DevSecOps: Five Steps to a Self-Driving Cloud (ENT214-S) - AWS re:...
Autonomous DevSecOps: Five Steps to a Self-Driving Cloud (ENT214-S) - AWS re:...
 
Chaos Engineering: Why Breaking Things Should Be Practised.
Chaos Engineering: Why Breaking Things Should Be Practised.Chaos Engineering: Why Breaking Things Should Be Practised.
Chaos Engineering: Why Breaking Things Should Be Practised.
 

Mais de Amazon Web Services

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Amazon Web Services
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Amazon Web Services
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateAmazon Web Services
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSAmazon Web Services
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Amazon Web Services
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Amazon Web Services
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...Amazon Web Services
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsAmazon Web Services
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareAmazon Web Services
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSAmazon Web Services
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAmazon Web Services
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareAmazon Web Services
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWSAmazon Web Services
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckAmazon Web Services
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without serversAmazon Web Services
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...Amazon Web Services
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceAmazon Web Services
 

Mais de Amazon Web Services (20)

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS Fargate
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWS
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot
 
Open banking as a service
Open banking as a serviceOpen banking as a service
Open banking as a service
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
 
Computer Vision con AWS
Computer Vision con AWSComputer Vision con AWS
Computer Vision con AWS
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatare
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e web
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWS
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch Deck
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without servers
 
Fundraising Essentials
Fundraising EssentialsFundraising Essentials
Fundraising Essentials
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container Service
 

Best Practices for Building Multi-Region, Active-Active Serverless Applications (SRV425-R1) - AWS re:Invent 2018

  • 1.
  • 2. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Best Practices for Building Multi-region, Active-active Serverless Application Adrian Hornsby Technical Evangelist Amazon Web Services S R V 4 2 5
  • 3. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Breakout repeats Wednesday Best Practices for Building Multi-Region, Active-Active Serverless Applications 2:30 PM - Venetian, Level 2, Venetian H Friday Best Practices for Building Multi-Region, Active-Active Serverless Applications 10:00 AM - Mirage, Antigua A
  • 4. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Before we get started, let’s take a look at some fundamentals.
  • 5. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. About availability Availability Downtime per year 99% (2-nines) 3 days 15 hours 99.9% (3-nines) 8 hours 45 minutes 99.99% (4-nines) 52 minutes 99.999% (5-nines) 5 minutes 99.9999% (6-nines) 31 seconds
  • 6. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Availability in series Part X Part Y A = Ax Ay
  • 7. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Availability in series Component Availability Downtime X 99% (2-nines) 3 days 15 hours Y 99.99% (4-nines) 52 minutes X and Y Combined 98.99% 3 days 16 hours 33 minutes
  • 8. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Availability in parallel A = 1 – (1 – Ax)2 Part X Part X
  • 9. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Availability in parallel Component Availability Downtime X 99% (2-nines) 3 days 15 hours Two X in parallel 99.99% (4-nines) 52 minutes Three X in parallel 99.9999% (6-nines) 31 seconds
  • 10. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Component redundancy increases availability significantly!
  • 11. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. 18 Geographic Regions 55 Availability Zones (AZs) 4 regions and 12 more Availability Zones announced
  • 12. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. AWS Region and Availability Zones Region Availability Zone a Availability Zone b Availability Zone c data center data center data center data center data center data center data center data center data center
  • 13. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Multi-AZ architecture Region Availability zone a Availability zone b Availability zone c Application
  • 14. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Serverless components Region Availability zone a Availability zone b Availability zone c Serverless Components
  • 15. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. No servers to provision or manage Scales with usage Never pay for idle Availability and fault tolerance built in Why serverless components??
  • 16. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Why build a multi-region active-active architecture?
  • 17. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Improve latency for end-users
  • 18. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Disaster recovery Applications in US West Applications in US East Users from San Francisco Users from New York Service 1 Service 2 Service 3 Service 4 Service 1 Service 2 Service 3 Service 4
  • 19. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Customers doing multi-region active-active architecture?
  • 20. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Netflix 2013
  • 21. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Netflix 2016
  • 22. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Prerequisites to building a multi-region architecture.
  • 23. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. CAP Theorem Consistency Availability Partition Tolerance Data is consistent. All nodes see the same state. Every request is non-failing. Service still responds as expected if some nodes crash. Distributed System In the presence of a network partition, you must choose between consistency and availability!
  • 24. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Embrase eventual consistency … if no new updates are made to a given data item, eventually all accesses to that item will return the last updated value. Availability An eventually consistent system can return any value before it converges!! https://en.wikipedia.org/wiki/Eventual_consistency Distributed System Every request is non-failing.
  • 25. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Secure and reliable global network
  • 26. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 27. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 28. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Global routing
  • 29. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Routing policies with Route 53 RegionRegion Application Application
  • 30. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Latency based routing RegionRegion Application Application
  • 31. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Geo-based routing Region us-east-1Region us-west-2 Application Application
  • 32. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Weighted round robin routing Region us-east-1Region us-west-2 Application Application
  • 33. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. DNS failover Region us-east-1Region us-west-2 Application Application
  • 34. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Region us-east-1 Region us-west-2 https://globalddb.adhorn.me Regional API Endpoint Custom Domain Name Regional API Endpoint Custom Domain Name API Gateway
  • 35. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Build high performance, globally distributed applications Low latency reads & writes to locally available tables Disaster proof with multi-region redundancy Easy to set up and no application rewrites required Globally dispersed users Replica (N. America) Replica (Europe) Replica (Asia) Global App Global Table Amazon DynamoDB Global Tables Fully managed, multi-master, multi-region database
  • 36. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Amazon S3 cross-region replication Bucket with objects Bucket with objects
  • 37. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Multi-region multi-VPC connectivity Region Region VPC VPC VPC VPC VPC VPC Peering Amazon Backbone Peering https://aws.amazon.com/answers/networking/aws-multiple-region-multi-vpc-connectivity/
  • 38. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Testing multi-region architecture.
  • 39. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. GameDay at Amazon https://www.youtube.com/watch?v=zoz0ZjfrQ9s
  • 40. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Chaos engineering https://github.com/Netflix/SimianArmy
  • 41. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 42. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Region us-east-1 Region us-west-2 Global Table https://globalddb.adhorn.me
  • 43. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Region us-east-1 Region us-west-2 Global Table
  • 44.
  • 45.
  • 46.
  • 47.
  • 48.
  • 49. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Region us-east-1 Region us-west-2 Global Table
  • 50.
  • 51. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Region us-east-1 Region us-west-2 Global Table
  • 52. Amazon Route 53: Traffic Policy
  • 53. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Health checks with Route 53
  • 54. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Shallow health check Instance Cache node Email database Cluster Are you healthy? yes
  • 55. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Shallow health check Instance Cache node Email database Cluster Are you healthy? yes
  • 56. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Deep health check Instance Cache node Email database Cluster Are you healthy? yes Are you healthy? yes yes yes yes
  • 57. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Deep health check Instance Cache node Email database Cluster Are you healthy? no Are you healthy? no yes yes yes
  • 58. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Region us-east-1 Region us-west-2 Global Table https://globalddb.adhorn.me Voilà!
  • 59. Thank you! © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Adrian Hornsby @adhorn
  • 60. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.