Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Doing more with (server)less

Doing more with (server)less

This is an introduction into serverless; setting the context as to why serverless matters and then a brief history of serverless over the past 5 years to where we are now.

Ricardo Sueiras

March 26, 2020
Tweet

More Decks by Ricardo Sueiras

Other Decks in Technology

Transcript

  1. © 2018, Amazon Web Services, Inc. or its Affiliates. All

    rights reserved. Amazon Confidential and Trademark © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark Do more with (server)less Focusing on your customers and your mission Ricardo Sueiras | AWS Principal Advocate Open Source | @094459
  2. OLD WORLD IT Employees at work Factories + supply chain

    Sales channels Marketing analytics
  3. NEW WORLD IT Employees at work Factories + supply chain

    IoT-connected things Online marketing Continuous supply tracking Just-in-time production Online sales + delivery Social media
  4. © 2019 @094459 Customer Experience Customers have more information and

    more choice; customer expectation has shifted and is changing how we do business
  5. © 2019 @094459 Customer Expectations Banks aren’t being disrupted by

    FinTech technology, they’re being disrupted by customer expectations. — McKinsey & Company
  6. © 2019 @094459 Speed Matters “In the new world, it

    is not the big fish that eats the small fish, it is the fast fish which will eat the slow fish”
  7. © 2019 @094459 https://easysunday.com/blog/sunday-amazon-web-services-aws-en/ “consumer demands and behaviors are changing

    rapidly where traditional insurers are not able to meet these demands owing to challenges in speed, scalability and flexibility of their technology platform to offer differentiated products and services”
  8. © 2019 @094459 What changes have to be made in

    this new world? Architectural patterns Operational model Software delivery
  9. © 2019 @094459 monolithic application + teams 2 0 0

    1 L E S S O N L E A R N E D : D E C O M P O S E F O R A G I L I T Y 2 0 0 2 microservices + 2 pizza teams Transformation at Amazon: 2001–2002
  10. © 2019 @094459 DEV OPS Decomposing for agility Innovation Agility

    Velocity Create high quality customer experiences Focus on differentiation and lowering costs Increase automation and iteration
  11. © 2019 @094459 Microservices Serverless DevOps Decouple for innovation Business

    Capabilities Products not projects Autonomy and innovation No provisioning/management Automatic scaling Pay for value Availability and Resilience Security Infrastructure automation Culture Automation tools & CI/CD DEV OPS Decomposition in action
  12. © 2019 @094459 Characteristics of serverless No infrastructure provisioning, no

    management Automatic scaling Pay for value Highly available and secure
  13. © 2019 @094459 The basic construct of serverless Events Fully-managed

    Services Functions Storage Databases Analytics Machine Learning User uploads a file Customer data updated Anomaly detected API explicitly called Your unique business logic
  14. © 2019 Focus on creating business value Remove heavy lifting

    with serverless everything CUSTOMER AWS Messaging & Orchestration Compute Physical Infrastructure API Business logic Storage & Databases Focus on your mission with serverless @094459
  15. © 2019 @094459 AWS Lambda AWS Fargate Amazon API Gateway

    Amazon SNS Amazon SQS AWS Step Functions C O M P U T E D A T A S T O R E S I N T E G R A T I O N Amazon Aurora Serverless Amazon S3 Amazon DynamoDB AWS AppSync
  16. © 2019 AWS operational responsibility models On-Premises Cloud Less More

    Compute Virtual Machine EC2 Elastic Beanstalk AWS Lambda Fargate Databases MySQL MySQL on EC2 RDS MySQL RDS Aurora Aurora Serverless DynamoDB Storage Storage S3 Messaging ESBs Amazon MQ Kinesis SQS / SNS Analytics Hadoop Hadoop on EC2 EMR Elasticsearch Service Athena
  17. © 2019 @094459 AWS Lambda Serverless functions AWS Fargate Serverless

    containers ECS/EKS Container-management as a service EC2 Infrastructure-as-a-Service More opinionated Less opinionated AWS manages Customer manages • Data source integrations • Physical hardware, software, networking, and facilities • Provisioning • Application code • Container orchestration, provisioning • Cluster scaling • Physical hardware, host OS/kernel, networking, and facilities • Application code • Data source integrations • Security config and updates, network config, management tasks • Container orchestration control plane • Physical hardware software, networking, and facilities • Application code • Data source integrations • Work clusters • Security config and updates, network config, firewall, management tasks • Physical hardware software, networking, and facilities • Application code • Data source integrations • Scaling • Security config and updates, network config, management tasks • Provisioning, managing scaling and patching of servers Comparison of operational responsibility
  18. © 2019 @094459 Serverless in the early days - 2014

    S3 Bucket S3 Bucket Lambda function (Generate thumbnails!)
  19. © 2019 @094459 Serverless in the early days - 2015

    S3 Bucket S3 Bucket Lambda function (Static website generators)
  20. © 2019 @094459 Serverless in the early days – 2015

    Browser JavaScript S3 Bucket Lambda function (Dynamic website) AWS SDK Lambda invoke DynamoDB Table
  21. © 2019 @094459 Serverless in the early days – 2015

    later S3 Bucket Lambda function DynamoDB Table Data Streams Amazon Echo IoT Devices Scheduler API Gateway Web APIs Services
  22. © 2019 @094459 Lambda function Local Dev AWS Data Streams

    Amazon Echo IoT Devices Web APIs Services Serverless Application Model (SAM) Scheduler API Gateway Serverless Application Repository Custom Runtimes Layers Orchestration Logging/Tracing AWS Services
  23. © 2019 @094459 Lambda function Local Dev AWS Data Streams

    Amazon Echo IoT Devices Web APIs Services Serverless Application Model (SAM) Scheduler API Gateway Serverless Application Repository Custom Runtimes Layers Orchestration Logging/Tracing AWS Services Edge Locations Lambda@Edge AWS IoT Greengrass AWS Snowball Edge
  24. © 2019 @094459 Minimal device model Trillions of invocations every

    month Infrastructure Development Development and deployment frameworks and Tools - IDE integrations (pycharm, vscode, intelij) - SAM, Chalice, Zappa, Up, Architect - power tuning tools and hundreds of open source projects Deployment Speed from simplicity Powered by open source
  25. © 2019 @094459 Created a serverless stock trade validation system

    in 3 months that improved processing times by 67% while reducing costs by 50% Customers doing more with (server)less Cut our CRISPR off-target search times by 90% and scaled to hundreds of genomes. With faster searches, scientists using our platform can spend more time focusing on their research.
  26. © 2019 @094459 Reducing AWS costs by 93% Delivery of

    a new production donation platform in 4 months with 3 engineers
  27. © 2019 @094459 Capital One Performance gains From the time

    the request is received by lambda to the time to send the response back 70% Cost savings By removing EC2, ELB and RDS from our solution 90% Increase in team velocity Reduce investment in team’s time on DevOps and dedicate back to feature development! 30%
  28. © 2019 @094459 Achieving Business Value Cost savings (TCO) Staff

    productivity Operational resilience Business agility Example Created a serverless stock trade validation system in 3 months (Finra) Example Traffic spiked by at least 20 times, but because of the simple scalability of a serverless AWS architecture, it was a non-event (iRoomba) Example 93%+ reduction in AWS bill (ComicRelief) Example We can put more developers on projects, enabling the creation of more internal solutions that will drive efficiency and productivity. (TheGuardian) What is it? Infrastructure cost savings/ avoidance from moving to the cloud What is it? Efficiency improvement by function on a task-by- task basis What is it? Benefit of improving SLAs and reducing unplanned outage What is it? Deploying new features/ applications faster and reducing errors Cost impact Value impact Typical Focus Most compelling Cloud benefits Cloud Value Framework
  29. © 2019 @094459 Learning resources • Tutorials and workshops in

    the AWS Lambda documentation pages • Attend your nearest ServerlessDays meetup • Twitch/online content delivered by Serverless advocates • Explore best practices by looking at the AWS Well Architected Serverless Lens
  30. © 2019 @094459 Additional resources to get you started Migrating

    a monolith to serverless https://bit.ly/3bLeOMO Reading material - Monolith to Microservices: Evolutionary Patterns to Transform Your Monolith by Sam Newman