Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Inside AWS: Technology Choices for Modern Applications (SRV305-R1) - AWS re:Invent 2018

427 views

Published on

AWS offers a wide range of cloud computing services and technologies, but we rarely state opinions about which services and technologies customers should choose. When it comes to building our own services, our engineering groups have strong opinions, and they express them in the technologies they pick. Join Tim Bray, Senior Principal Engineer, to hear about the high-level choices that developers at AWS and our customers have to make. Here are a few: Are microservices always the way to go? Serverless, containers, or serverless containers? Is relational over? Is Java over? The talk is technical and based on our experience in building AWS services and working with customers on their cloud-native apps.

Inside AWS: Technology Choices for Modern Applications (SRV305-R1) - AWS re:Invent 2018

  1. 1. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Inside AWS: Technology Choices for Modern Applications Tim Bray Messaging/Serverless/Workflow guy, AWS [ timbray@amazon.com, @timbray, www.tbray.org ] S R V - 3 0 5
  2. 2. “Modern Applications”
  3. 3. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Thursday, November 29 Leadership Session: Using DevOps, Microservices, and Serverless to Accelerate Innovation (SRV325) 12:15 – 1:15 PM | Venetian Theatre (Level 2)
  4. 4. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Assess and prioritize, app by app Pick path to modernization Lift & shift: data center → EC2 Re-platform: VMs → containers Refactor: monolith → microservices Re-invent: host fleets → serverless
  5. 5. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Assess and prioritize, app by app Pick path to modernization Lift & shift: data center → EC2 Re-platform: VMs → containers Refactor: monolith → microservices Re-invent: host fleets → serverless Integration is a really big deal.
  6. 6. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Storybird.com
  7. 7. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Storybird.com MySQLvia Amazon RDS Django on Amazon EC2 Application Load Balancer
  8. 8. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. “Modern Applications” 1. Security/compliance first 2. Use microservices 3. Serverless where possible 4. CI/CD 5. Monitor, monitor, monitor!
  9. 9. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. “Modern Applications” 1. Security/compliance first 2. Use microservices 3. Serverless where possible 4. CI/CD 5. Monitor, monitor, monitor! 6. Databases 7. Integration interfaces
  10. 10. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. How Amazon SQS works Front End Back End Metadata Amazon DynamoDB Load Manager
  11. 11. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Why serverless? 1. Frugality 2. Security 3. Elasticity
  12. 12. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Why serverless? 1. Frugality 2. Security 3. Elasticity 4. Better design?
  13. 13. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  14. 14. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. How Amazon MQ works Amazon API Gateway λ DynamoDB Control Plane Data Plane
  15. 15. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. A few AWS services with serverless Control Planes Amazon SageMaker AWS AppSyncAWS Batch AWS Elemental AWS IoT Core Amazon GuardDuty Amazon EKS API Gateway
  16. 16. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Why not serverless? What about Latency?!?!?
  17. 17. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Thinking about latency P50 P90 P99 P100 1 sec 24 sec
  18. 18. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Sources of serverless function latency Runtime startup State hydration Serverless platform startup vs Language runtime startup Cold startup vs Warm startup P50 vs P90 vs P99 vs P100
  19. 19. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Latency management 1: Keep functions warm Photo: Ryan Mahle from Sherman Oaks, CA, USA - Flickr.com
  20. 20. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Latency management 2: Programming languages
  21. 21. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  22. 22. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Latency management 3: State hydration Amazon S3 λ
  23. 23. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Latency management 3: State hydration DBMS API Gateway AWS AppSync Amazon SQS Amazon SNSAmazon Kinesis AWS ElastiCache
  24. 24. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. How the SFN/SWF History service works DynamoDB Workflows Event Routing = execution)(
  25. 25. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Databases in Modern Applications RDBMS (Amazon RDS) NoSQL (DynamoDB) DynamoDB Accelerator
  26. 26. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Relational or not?
  27. 27. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Databases in Modern Applications RDBMS (RDS) NoSQL (DynamoDB) DynamoDB Accelerator Amazon Quantum Ledger Database
  28. 28. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Logs, immutability, and Quantum
  29. 29. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Amazon QLDB Summary Journal Transactions
  30. 30. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. QLDB tl;dr SummaryJournal Transactions • Transactions are SQL-ish • Query the Summary with SQL • “Records” are ION (JSON superset) documents • Journal is a cryptographically chained immutable ledger • Journal is also a database table • It’s serverless!
  31. 31. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. How the SFN/SWF History service works DynamoDB Workflows Event Routing = execution)( QLDB
  32. 32. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Some AWS services that use containers SageMaker Amazon Rekognition Batch Elemental …more…
  33. 33. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Containers and serverlessness VM Container Function Cheetah: Malene Thyssen (http://commons.wikimedia.org/wiki/User:Malene) Orthogonal… in theory
  34. 34. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Integration patterns APIs Orchestration Eventing Tightly-coupled Contract-driven Synchronous Fast Long-lived Data-driven Durable Unified logging Loosely-coupled Data-driven Asynchronous Buffered Durable
  35. 35. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Orchestration Orchestration Long-lived Data-driven Durable Unified logging AWS Step Functions
  36. 36. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Event-driven Computing Eventing Loosely-coupled Data-driven Asynchronous Buffered Durable Amazon SNS Amazon CloudWatch Events
  37. 37. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. How Step Functions Connectors work AWS Step Functions AWS Glue Amazon CloudWatch Events Amazon SQS
  38. 38. Thank you! © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Tim Bray timbray@amazon.com / @timbray / www.tbray.org
  39. 39. Please complete the session survey in the mobile app. ! © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.

×