Building Global, Multi -Region Serverless Backends - Amazon Web...
Transcript of Building Global, Multi -Region Serverless Backends - Amazon Web...
![Page 1: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/1.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Ian Massingham, Developer Technology Evangelism, AWS
@IanMmmm
Building Global, Multi-Region Serverless Backends(powered by DynamoDB Global Tables)
![Page 2: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/2.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Session objectives
1. Understand System Reliability and Availability.
2. Understand why we build a Multi-Region Active-Active architecture.
3. Understand how to build a Multi-Region Active-Active architecture
on AWS.
4. How To: Building Multi-Region Serverless Applications
5. Conclusion.
![Page 3: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/3.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
System Reliability and Availability
![Page 4: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/4.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Failures are a given and everything will eventually fail over time.
Werner VogelsCTO – Amazon.com
“ “
![Page 5: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/5.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
System failure rateEarly FailuresWear Out Failures
Observed Failures
Random Failures
![Page 6: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/6.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
System failure rateFor high-velocity deployments
Early FailuresWear Out Failures
Observed Failures
Random Failures
![Page 7: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/7.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
System Availability
Availability = Normal Operation Time
Total Time
MTBF**
MTBF** + MTTR*=
* Mean Time To Repair (MTTR)
**Mean Time Between Failure (MTBF)
![Page 8: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/8.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Availability
Availability Downtime per year Categories
95% (1-nine) 18 days 6 hoursBatch processing, Data extraction, Load jobs.
99% (2-nines) 3 days 15 hours Internal Tools, Project Tracking
99.9% (3-nines) 8 hours 45 minutes Online Commerce
99.99% (4-nines) 52 minutes Video Delivery, Broadcast systems
99.999% (5-nines) 5 minutes Telecom Industry (ATM Transactions)
99.9999% (6-nines) 31 seconds Answering to my loved one*
* Joke J
http://royal.pingdom.com/wp-content/uploads/2015/04/pingdom_uptime_cheat_sheet.pdf
![Page 9: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/9.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Availability in Series
Part X Part Y
A = Ax Ay
![Page 10: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/10.jpg)
© 2017, 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
![Page 11: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/11.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Availability in Parallel
A = 1 – (1 – Ax)2
Part X
Part X
![Page 12: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/12.jpg)
© 2017, 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
![Page 13: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/13.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
“Component redundancy increases availability significantly!”
![Page 14: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/14.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Availability Zone A Availability Zone B Availability Zone C
AWS Region
![Page 15: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/15.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Availability Zone A Availability Zone B Availability Zone C
Multi-AZ Well-Architected
Application
![Page 16: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/16.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
AmazonDynamoDB
AmazonRDS
Amazon ElastiCache
AmazonS3
Amazon EFS
AmazonSQS
Amazon Kinesis
Amazon ElasticSearch
Default
Configurable for multi-AZ deployment
Some of the Regional AWS Services
AWSLambda
AmazonAPI Gateway
AWSELB
![Page 17: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/17.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Regional services
AZ1 AZ2 AZ3
Service XYZ
![Page 18: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/18.jpg)
© 2017, 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??
![Page 19: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/19.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
• 18 Geographic Regions • 50 Availability Zones (AZs) • 4 regions and 12 more Availability Zones announced
![Page 20: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/20.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Cost of Availability (approx.)
Cost
Availability
Com
plexity
![Page 21: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/21.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Generally speaking a reliable machine has high availability but an available machine may or
may not be very reliable.
![Page 22: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/22.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
On reliability
Ability of a system to :
1. Recover from infrastructure or service disruptions
2. Dynamically acquire computing resources to meet demand
3. Mitigate disruptions such as misconfigurations or transient network issues.
![Page 23: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/23.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
2 important lesson learned
![Page 24: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/24.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Exponential Backoff
![Page 25: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/25.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Message passing for async. patterns
AQueue
B
AQueue
BListener
Pub-Sub
![Page 26: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/26.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
W eb Instances
W orkerInstance
W orkerInstance
Queue
APIInstance
APIInstance
APIInstance
API: {DO foo}
PUT JOB: {JobID: 0001, Task: DO foo}
API: {JobID: 0001}
GET JOB: {JobID: 0001, Task: DO foo}
Cache
Result: {
JobID: 0001, Result: bar
}
![Page 27: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/27.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
W orkerInstance
W orkerInstance
Q ueue
APIInstance
APIInstance
APIInstance
Cache
Am azon SN S
Push N otification
U ser
![Page 28: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/28.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Well-Architected Framework
Operational Excellence
Security
Reliability
Performance Efficiency
Cost Optimization
https://aws.amazon.com/architecture/well-architected/
![Page 29: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/29.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Why build a Multi-Region Active-Active architecture?
![Page 30: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/30.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Why Multi-Region?
1. Improve Latency for end-users
~300ms
~140ms
![Page 31: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/31.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Why Multi-Region?
1. Improve Latency for end-users2. 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
![Page 32: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/32.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Why Multi-Region?
1. Improve Latency for end-users2. Disaster Recovery3. Business Requirements
![Page 33: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/33.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Netflix 2013
![Page 34: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/34.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Netflix 2016
![Page 35: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/35.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Chaos Engineering
![Page 36: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/36.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
How to build a Multi-Region Architecture on AWS.
![Page 37: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/37.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Data Replication
Component A
Component B
Component C
Latency < 5 msSynchronous Asynchronous
Latency > 5 ms
![Page 38: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/38.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Process A Process B Process A Process B
Synchronous Asynchronous
WaitingWorkingContinues
get or fetch resultGet result
![Page 39: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/39.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Reliable & Secure Network
AWS RegionA
AWS RegionBAmazon Global Network
![Page 40: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/40.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
James Hamilton – 2016 re:InventV i c e P r e s i d e n t & D i s t i n g u i s h e d E n g i n e e r
![Page 41: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/41.jpg)
![Page 42: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/42.jpg)
![Page 43: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/43.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Multi-Region Multi-VPC Connectivity
![Page 44: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/44.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
S3 - Cross-Region Replication
![Page 45: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/45.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Cross-Region Read Replicas for Amazon RDS
** For Aurora, MySQL, MariaDB and PostgreSQL engines.
![Page 46: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/46.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
“Simple” Cross-Region Usage Pattern
• Regional Reads• All critical writes traffic
to a single master
![Page 47: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/47.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Aurora multi-master - scale out reads & writes First MySQL compatible DB service with scale-out across multiple data centers
Zero application downtime from ANY instance failure
Zero application downtime from ANY AZ failure
Faster write performance and higher scale
Sign up for single-region multi-master preview today;
Multi-Region Multi-Master coming in 2018Availability
Zone 1
Scale out both reads and writes
Availability Zone 2
Availability Zone 3
Application
Read/WriteMaster 1
Shared distributed storage volume
Read/WriteMaster 2
Read/WriteMaster 3
![Page 48: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/48.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Amazon DynamoDBFast and flexible NoSQL database service for any scale
Fast, consistent performance
Highly scalable Fully managed Business critical reliability
Consistent single-digit millisecond latency; DAX in-memory
performance reduces response times to microseconds
Auto-scaling to hundreds of terabytes of data that
serve millions of requests per second
Automatic provisioning, infrastructure
management, scaling, and configuration with
zero downtime
Data is replicated across fault tolerant Availability Zones, with fine-grained
access control
![Page 49: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/49.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Prime Day 2017 Metrics
Block Storage – Use of Amazon Elastic Block Store (EBS) grew by 40% year-over-year, with aggregate data transfer jumping to 52 petabytes (a 50% increase) for the day and total I/O requests rising to 835 million (a 30% increase).
NoSQL Database – Amazon DynamoDB requests from Alexa, the Amazon.com sites, and the Amazon fulfillment centers totaled 3.34 trillion, peaking at 12.9 million per second.
Stack Creation – Nearly 31,000 AWS CloudFormation stacks were created for Prime Day in order to bring additional AWS resources on line.
API Usage – AWS CloudTrail processed over 50 billion events and tracked more than 419 billion, all in support of Prime Day.
Configuration Tracking – AWS Config generated over 14 million Configuration items for AWS resources.
![Page 50: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/50.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Amazon DynamoDB Global Tables (GA)First fully managed, multi-master, multi-region database
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
![Page 51: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/51.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Amazon DynamoDB Streams
• Each stream record appears exactly once in the stream.• For each item that is modified in a DynamoDB table, the
stream records appear in the same sequence as the actual modifications to the item
AmazonDynamoDB
AWSLambda
Streams
![Page 52: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/52.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Amazon Route 53
• AWS’s Authoritative Domain Name Service.• Highly available and scalable.• Supports Traffic Flow through a variety of routing, all
of which can be combined with DNS Failover.• Enable a variety of low-latency, fault-tolerant
architectures.
![Page 53: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/53.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Traffic Routing with Route53
1. Latency Based Routing
Amazon Route53
Resource A
Resource B
137ms latency
76ms latency
![Page 54: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/54.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Traffic Routing with Route53
1. Latency Based Routing2. Geo DNS
Amazon Route53
Resource AIn US
Resource B in EU
User in US
![Page 55: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/55.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Traffic Routing with Route53
1. Latency Based Routing2. Geo DNS3. Weighted Round Robin
Amazon Route53
Resource AIn US
Resource B in EU
![Page 56: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/56.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Traffic Routing with Route53
1. Latency Based Routing2. Geo DNS3. Weighted Round Robin4. DNS Failover
Amazon Route53
Resource AIn US
Resource B in EU
User in US
![Page 57: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/57.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
How To: Building Multi-Region Serverless Applications
![Page 58: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/58.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Amazon DynamoDB
AWS LambdaAmazon API Gateway
Amazon DynamoDB
AWS LambdaAmazon API Gateway
Amazon Route53
eu-west-1
us-east-1
Global Tables
https://globalddb.adhorn.me/
![Page 59: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/59.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Amazon DynamoDB
Amazon DynamoDB
eu-west-1
us-east-1
Global Tables
![Page 60: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/60.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
![Page 61: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/61.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
![Page 62: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/62.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
![Page 63: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/63.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
![Page 64: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/64.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
![Page 65: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/65.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Amazon DynamoDB
AWS Lambda
Amazon DynamoDB
AWS Lambda
eu-west-1
us-east-1
Global Tables
![Page 66: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/66.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
AWS Lambda Function
![Page 67: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/67.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Amazon DynamoDB
AWS LambdaAmazon API Gateway
Amazon DynamoDB
AWS LambdaAmazon API Gateway
eu-west-1
us-east-1
Global Tables
![Page 68: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/68.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
us-west-2
us-east-1
C lient
Am azonRoute 53
RegionalAPI
Endpoint
RegionalAPI
Endpoint
Custom Domain Name
Custom Domain Name
API Gateway
API Gateway
Lambda
Lambda
glob
aldd
b.ad
horn
.me
CNAM E
CNAM
E
Multi-Region with API Gateway
![Page 69: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/69.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Route53: Traffic Policy
![Page 70: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/70.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Amazon DynamoDB
AWS LambdaAmazon API Gateway
Amazon DynamoDB
AWS LambdaAmazon API Gateway
Amazon Route53
eu-west-1
us-east-1
Global Tables
https://globalddb.adhorn.me/
![Page 71: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/71.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Conclusion
![Page 72: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/72.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
We learned about
1. System Reliability and Availability.
2. Why to build a Multi-Region Active-Active architecture.
3. How to build a Multi-Region Active-Active architecture on AWS.
4. We looked at a Multi-Region Serverless App
![Page 73: Building Global, Multi -Region Serverless Backends - Amazon Web …aws-de-media.s3.amazonaws.com/images/DevDays 2018/SER4... · 2018-07-05 · NoSQL Database – Amazon DynamoDBrequests](https://reader033.fdocuments.us/reader033/viewer/2022042221/5ec7e6d29b761d7a4112abdd/html5/thumbnails/73.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Thanks!@adhorn
https://medium.com/@adhorn