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.

AWS Lambda: Event-driven Code in the Cloud

5 068 vues

Publié le

AWS Lambda is a new compute service that runs your code in response to events and automatically manages compute resources for you. In this session, you learn what you need to get started quickly, including a review of key features, a live demonstration, guidelines on how to use AWS Lambda with Amazon S3 event notifications and Amazon DynamoDB streams, and tips on getting the most out of Lambda functions.

Publié dans : Technologie
  • You can ask here for a help. They helped me a lot an i`m highly satisfied with quality of work done. I can promise you 100% un-plagiarized text and good experts there. Use with pleasure! ⇒ www.HelpWriting.net ⇐
       Répondre 
    Voulez-vous vraiment ?  Oui  Non
    Votre message apparaîtra ici
  • I pasted a website that might be helpful to you: ⇒ www.HelpWriting.net ⇐ Good luck!
       Répondre 
    Voulez-vous vraiment ?  Oui  Non
    Votre message apparaîtra ici
  • Sex in your area is here: ♥♥♥ http://bit.ly/39sFWPG ♥♥♥
       Répondre 
    Voulez-vous vraiment ?  Oui  Non
    Votre message apparaîtra ici
  • Dating direct: ♥♥♥ http://bit.ly/39sFWPG ♥♥♥
       Répondre 
    Voulez-vous vraiment ?  Oui  Non
    Votre message apparaîtra ici

AWS Lambda: Event-driven Code in the Cloud

  1. 1. ©2015, Amazon Web Services, Inc. or its affiliates. All rights reserved AWS Lambda: Event-Driven Code in the Cloud Dr. Tim Wagner, General Manager AWS Lambda July 9, 2015 | New York, NY
  2. 2. Apps Without Servers What’s the easiest server to manage? The one somebody else takes care of!
  3. 3. Five Sample Use Cases for AWS Lambda Serverless Microservices Adding a Feature to Amazon S3 Extending Platforms Scalable Mobile Backends Real-Time Streaming Analysis
  4. 4. Requirements • Effortless scaling / no provisioning • Built-in rollout • Highly available by default • BYOC* • Never pay for idle *Bring Your Own Code
  5. 5. A Scalable Mobile Backend
  6. 6. A Scalable Mobile Backend… Without Coding the Mobile Backend
  7. 7. Building a Mobile Backend with AWS Lambda 1. Create an Amazon DynamoDB database. 2. Pick the “Simple Mobile Backend” sample code in the Lambda console. 3. Build your app with the AWS Mobile SDK. AWS Lambda Let’s see it in action…
  8. 8. Building a Mobile Backend: Add-ons Want users to log in? Use Amazon Cognito Identity. Need device-specific rendering? Device info is in the function’s context object. AWS Lambda
  9. 9. What Makes This Easy? Eliminating the distance between “Works on my box” and “Ship it to customers!” Never Pay for Idle Built-In Web Server Auto Patch Auto Deploy Auto Scale Built-In Monitoring Built-In Logging Built-In Security HTTP Endpoint
  10. 10. Diving Deeper: Programming Model • Two main languages – Node.js – Java 8 • Plus Scala, Clojure, and other “jvm” languages • Run background processes – Node.js or Java – Also Python, csh, or your own executable • Native libraries are welcome!
  11. 11. Serverless Microservices
  12. 12. HTTP Endpoints Let’s see it in action…
  13. 13. SquirrelBin Architecture Static web content served from Amazon S3 “Codeless” Backend + Acorn Execution Acorns Stored in Amazon DynamoDB
  14. 14. New Capabilities for AWS Lambda Functions • Public HTTP endpoints • Throttling controls • API Key management • Results caching • SDK Generation and Swagger support • Apache Velocity templates • API mocking
  15. 15. Learn More About Amazon API Gateway Build and Manage Your APIs with Amazon API Gateway Simon Poile, General Manager 4:30 p.m.–5:30 p.m. Room 1E12
  16. 16. Diving Deeper: Programming Model • Run your code sync or async from… – Any AWS SDK – AWS Mobile SDK – REST call – AWS Command Line Interface – Inside AWS Lambda itself (yep, it self-hosts) • Code is pre-credentialed – Choose a role and Lambda will assume it for you – Cross account access is supported
  17. 17. Extending Other Platforms
  18. 18. Compute for Connected Devices • Alexa Skills Kit—build voice-enabled apps • Uses AWS Lambda as a connected device/IoT platform
  19. 19. Slack Demo Architecture Alexa, tell Slack to send, “I’m giving the demo now.” Message Retrieval (via Amazon SQS queue) Kevin says, “Break a leg!” Message Upload (via Slack API) Team (channel users) Slack
  20. 20. GitHub Event Responder Events from GitHub Team (repository users) GitHub Amazon SNS Messages
  21. 21. Ricky Robinett Developer Evangelist
  22. 22. AWS Lambda Integration Partners
  23. 23. What Makes This Easy? For the Platform Provider • Nothing to host • Nothing to license • No capacity management • No web service to run • Low latency sync calls • “Fire and forget” events For the App Developer • Low cost • Forever free tier • No infrastructure • No “boilerplate” code • Language choice • No library restrictions
  24. 24. Diving Deeper: Resource Sizing • AWS Lambda offers 12 “power levels” • Higher levels offer more memory and more CPU power – 128 MB, lowest CPU power – 1.5 GB, highest CPU power • Higher power levels == lower latency for CPU- bound and bursty tasks • Compute price scales with the power level
  25. 25. Extending Amazon S3
  26. 26. Extending Amazon S3 with Auto-Compress Amazon S3 Bucket Events AWS Lambda Original object Compressed object 1 2 3
  27. 27. How to Add a Feature to Amazon S3 1. Grab Java compress sample from the web. 2. Start with the Amazon S3 event sample: 1. GET original from S3 2. Compress 3. PUT compressed version back to S3 3. Pick some S3 bucket(s) to apply it to. Let’s see it in action…
  28. 28. What Makes This Easy? Request-Level Scaling! • Who knows the event rate? S3 and Lambda! • You can’t over or under provision (by design) • Pay only for what you use
  29. 29. AWS Services You Can Extend Today Amazon S3 Amazon DynamoDB AWS CloudTrail Amazon CloudWatch Logs AWS CloudFormation Amazon Kinesis Amazon Cognito Amazon SNS
  30. 30. Amazon CloudWatch Alarm Responder Amazon CloudWatch Alarms SNS Messages
  31. 31. Real-Time Streaming Analysis
  32. 32. Easy Real-Time Streaming Architecture Data Ingestion with Amazon Kinesis (PUT record) Records retrieved by AWS Lambda Your code runs once per [batch of] records Amazon S3 Amazon DynamoDB Smart Devices Click Stream Log Data Amazon Redshift Learn more: Watch the Lambda Webinar on Streaming Data
  33. 33. Diving Deeper: Retries and Event Ordering • Three possibilities: – Call your AWS Lambda function synchronously. • Using the AWS SDK? Set your retry logic there. • Direct RESTful call to Lambda? You control retries entirely. • Ordering is up to the caller. – Amazon S3 or SNS trigger your Lambda function, or you call Lambda asynchronously. • 3 tries, total, then the event is discarded • Unordered (“loosely ordered”) – Lambda polls an Amazon Kinesis or Amazon DynamoDB update stream for you • No limit on tries, ordering preserved
  34. 34. Aside: Shards and Ordering Shard 1 • Record 1a • Record 1b
  35. 35. Aside: Shards and Ordering Shard 1 • Record 1a • Record 1b Shard 2 • Record 2a • Record 2b Shard 3 • Record 3a • Record 3b
  36. 36. Aside: Shards and Ordering Shard 1 Shard 2 Shard 3 • Record 3a • Record 3b
  37. 37. Practicalities
  38. 38. AWS Lambda Regions AWS Lambda Region NEW: Tokyo launched 6/29
  39. 39. Fine-grained pricing • Buy compute time in 100 ms increments • Low request charge • No hourly, daily, or monthly minimums • No per-device fees Never pay for idle. Free Tier 1 million requests and 400,000 GBs of compute. Every month, every customer.
  40. 40. Build and Deploy Integration Jenkins Grunt AWS CloudFormation Amazon S3 Partners
  41. 41. Coming Soon: Function Versioning • How it works: – Develop at HEAD—updates replace existing code – Publish to create an immutable snapshot – Every function has a default version (which can be HEAD) – Callers can request • The default version • A specific version • HEAD • APIs support staging and versioning (now)
  42. 42. We’ve Been Busy. Now, It’s Your Turn.
  43. 43. Go to the AWS Lambda console, create a function, and run it. (The first million invokes are on us!)
  44. 44. Congrats, you’re a Lambda function expert! Add an event source or an HTTP endpoint.
  45. 45. Build the world’s easiest mobile backend. (Hint: Start with the built-in CRUD sample!)
  46. 46. Follow AWS Lambda! aws.amazon.com/blogs/compute aws.amazon.com/lambda AWS Lambda Forum Your Feedback is Important to AWS Please complete the session evaluation and tell us what you think. (I read every comment!)
  47. 47. NEW YORK

×