Ce diaporama a bien été signalé.
Nous utilisons votre profil LinkedIn et vos données d’activité pour vous proposer des publicités personnalisées et pertinentes. Vous pouvez changer vos préférences de publicités à tout moment.

Building a fully serverless application on AWS | AWS Summit Tel Aviv 2019

373 vues

Publié le

In this session we will demonstrate how developers can rapidly build a fully functioning and scalable application using AWS managed services. The session will start with a demo of a fully functioning learning platform based on Sumerian Augmented Reality (AR). We will present the solution architecture end to end and dive deep into the different building blocks focusing on serverless services and datastores.

  • Soyez le premier à commenter

Building a fully serverless application on AWS | AWS Summit Tel Aviv 2019

  1. 1. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T Building a fully serverless applications on AWS D E V 3 0 7 Liron Dor Solutions Architect Manager, AWS Adir Sharabi Solutions Architect, AWS Benny Keinan VP R&D, Venn
  2. 2. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T Agenda Modern Application Development The PlayZon Application Building Blocks Customer Story: venn Demo
  3. 3. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T 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 Modern application development: a journey with many paths
  4. 4. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T Simplify infrastructure management with serverless technologies
  5. 5. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T What is serverless? No infrastructure provisioning, no management Automatic scaling Pay for value Highly available and secure
  6. 6. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
  7. 7. S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. PlayZon
  8. 8. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T Goal Build and demonstrate an interactive AR Serverless learning Platform
  9. 9. S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. PlayZon
  10. 10. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T PlayZon Architecture AWS Lambda Amazon DynamoDB Amazon ElastiCache Amazon API Gateway Amazon Cognito Amazon CloudFront AWS Cloud Mobile client Amazon Sumerian
  11. 11. S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  12. 12. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T App Development Process … Simplified Developer has idea Download & install 3D engine Install device SDK Register on platform Install platform SDK Develop application Submit for approval Publish application Customer finds app on store Customer hits purchase button Customer waits for download Customer uses application
  13. 13. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T App Dev’l Process … multiple platforms
  14. 14. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T With Amazon Sumerian you can focus on… Developer has idea Develop application Publish application Customer uses application
  15. 15. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T Amazon Sumerian Overview • Amazon Sumerian comprises an IDE, editor, APIs, Hosts, templates & asset library to make it easy to build & publish apps • Prebuilt templates for common scenarios • Hosts - lifelike characters to guide/narrate your applications • State Machine/JavaScript support for customizations & behaviors • Tight integration with AWS services
  16. 16. S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  17. 17. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T Serverless applications Services (anything) Changes in data state Requests to endpoints Changes in resource state Event source Function Node.js Python Java C# Go Ruby Runtime API
  18. 18. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T Anatomy of a Lambda function Handler() function Function to be executed upon invocation Event object Data sent during Lambda function Invocation Context object Methods available to interact with runtime information (request ID, log group, more)
  19. 19. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T Serverless architectures with AWS Lambda Lambda invoked File put into bucket Amazon S3 Object AWS Lambda Message inserted into to a queue 2. Function removes message from queue 1. Lambda polls queue and invokes function Amazon Simple Queue Service Message Amazon SQS AWS Lambda Lambda invoked Request sent to API Gateway API Call AWS Lambda Amazon API Gateway
  20. 20. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T Serverless architectures 1. Lambda polls stream Data published to a stream 2. Amazon Kinesis returns stream data Data Amazon Kinesis Data Streams AWS Lambda Request sent to ALB Application Load Balancer Request AWS Lambda Scheduled time occurs Event (time-base) AWS Lambda
  21. 21. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T AWS Lambda release history LambdaPreview Announcement re:Invent2014 ? *As of October 2018, does not include region launches 2015 2016 2017 2018
  22. 22. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T Lambda Layers Lets functions easily share code: Upload layer once, reference within any function Promote separation of responsibilities, lets developers iterate faster on writing business logic Built in support for secure sharing by ecosystem
  23. 23. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T Using Lambda Layers • Put common components in a ZIP file and upload it as a Lambda Layer • Layers are immutable and can be versioned to manage updates • You can reference up to five layers, one of which can optionally be a custom runtime Lambda Layers arn:aws:lambda:region:accountId:layer:shared-lib Lambda Layers arn:aws:lambda:region:accountId:layer:shared-lib:2 Lambda Layers arn:aws:lambda:region:accountId:layer:shared-lib:3
  24. 24. S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  25. 25. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T Amazon API Gateway Overview Fully managed service that makes it easy for developers to publish, maintain, monitor, and secure APIs at any scale • API keys to manage Quotas and throttle to protect your backend • Request/Response data transformation and API mocking • Cache with customizable keys and time-to-live • API Monitoring using Amazon CloudWatch • Native AWS Services integrations
  26. 26. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T Amazon API Gateway Integration AWS Lambda AWS Lambda AWS Lambda Amazon API Gateway Lambda Function invoked etc… AWS Step Functions Amazon API Gateway Step Function workflow is executed Amazon S3 Amazon DynamoDB Amazon Kinesis API call made directly against backing AWS Service Amazon API Gateway
  27. 27. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T API Gateway Stages and Variables Stages are named links to a deployed version of you API • Recommended for managing API lifecycle (Dev/Test/Prod) • Stage variables act like environment variables • Stage variables values accessible from most fields in API Gateway • Lambda Function ARN • HTTP Endpoint • Custom authorizer function name • Parameter mapping
  28. 28. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T Stage Variables and Lambda Aliases AWS Lambda Alias Version 1 2 prod 3 4 5 beta 6 7 dev 8 Amazon API Gateway Stage variable Production lambdaAlias=prod Beta lambdaAlias=beta Dev lambdaAlias=dev
  29. 29. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T Amazon API Gateway Canary Deployment Support Use canary release deployments to gradually roll out new version of APIs V1 = 100%Mobile client Amazon S3 Amazon DynamoDB Amazon Kinesis AWS Lambda All Traffic routed to currently deployed version
  30. 30. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T Amazon API Gateway Canary Deployment Support Use canary release deployments to gradually roll out new version of APIs Mobile client Amazon S3 Amazon DynamoDB Amazon Kinesis AWS Lambda 10% of traffic to new deployment of stage, rest to previous version V1 = 90% V2 = 10% No Changes to client V1 V2
  31. 31. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T 3 Endpoint Types to Choose From • Edge optimized: Designed to help you reduce client latency from anywhere on the internet • Regional: Designed to reduce latency when calls are made from the same region as the API • Private: Designed to expose APIs only inside your VPC
  32. 32. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T Benny Keinan, VP R&D (We are hiring…)
  33. 33. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T Venn in 60 Sec... World migration report 2015
  34. 34. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T 3 Million people are moving to cities every week World migration report 2015
  35. 35. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T 88% of Millennials In the US live in metropolitan areas National US Survey of Millenials, ULI, 2015
  36. 36. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T But not for long After a while, they are being priced out
  37. 37. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T So…?
  38. 38. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T Back to Parents
  39. 39. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T Back to Parents Suburban areas
  40. 40. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T Back to Parents Developing neighborhood Suburban areas
  41. 41. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T Back to Parents Developing neighborhood Suburban areas 35%
  42. 42. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T They are lackingBut Quality housing Services & amenities Sense of safety Social life
  43. 43. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
  44. 44. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T Venn provides quality living, creates shared spaces, supports hyperlocal business initiatives and facilitates community engagement, all on a neighborhood-wide level
  45. 45. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T venn a new way of neighboring
  46. 46. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T Brooklyn
  47. 47. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T Brooklyn Berlin
  48. 48. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T Brooklyn Berlin Tel Aviv
  49. 49. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T Barcelona Munich MilanLA BudapestSao PauloHamburg MadridChicago TorontoDublin AmsterdamJerusalem Cologne Philadelphia ManchesterParisLondon Brooklyn Berlin Tel Aviv 100 neighborhood around the world
  50. 50. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T Barcelona Munich MilanLA BudapestSao PauloHamburg MadridChicago TorontoDublin AmsterdamJerusalem Cologne Philadelphia ManchesterParisLondon Brooklyn Berlin Tel Aviv 1 Million venn members globally
  51. 51. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T Now, let’s talk about tech
  52. 52. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T Base assumptions & requirements Business Side Build for global adjust for local Dynamic business requirements Many product lines Many integrations Engineering Side Small team (all developers) Light on DevOps Quick release cycle Work on small problems Use 3rd party services Single stack and create attractive dev environment for developers...
  53. 53. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T High level architecture
  54. 54. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T Simple flow - open door
  55. 55. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T (Not) Simple flow - payment
  56. 56. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T What we learned?
  57. 57. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T Server & Serverless It took some experiments to connect them
  58. 58. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T How we did it
  59. 59. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T Invest in Learning It’s a different kind of development
  60. 60. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T Logs, alerts, etc. Serverless is no different, same tools and concepts
  61. 61. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T Once you build it... It is actually very cool and fun and we are happy ✓ Business Requirements ✓ Easy to Integrate ✓ Lean and Quick
  62. 62. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T Thank you venn.city/career
  63. 63. S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  64. 64. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T AWS Cloud9 Overview Cloud-based integrated development environment (IDE) that lets you write, run, and debug your code with just a browser • Code with just a browser • Start new projects quickly • Code together in real time • Build serverless applications with ease • Direct terminal access to AWS services
  65. 65. S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  66. 66. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T Summary Serverless promote rapid development! • Learn more about Serverless at AWS - https://aws.amazon.com/serverless/ • DEV308 - Twelve-Factor App Methodology and Modern Applications • Delivered by: Oren Reuveni and Uri Segev • Where: This room • When: 4:40PM
  67. 67. Thank you! © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. http://bit.ly/2SAXAas Liron Dor Solutions Architect Manager, AWS Adir Sharabi Solutions Architect, AWS Benny Keinan VP R&D, Venn

×