Serverless Days Austin

A presentation at Serverless Days - Austin in February 2019 in Austin, TX, USA by Chris Munns

Slide 1

Slide 1

Serverless is dead. Chris Munns Principal Developer Advocate AWS Serverless © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Slide 2

Slide 2

Why are we here today? © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. https://secure.flickr.com/photos/mgifford/4525333972

Slide 3

Slide 3

Serverless is dead. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Photo by Echo Grid on Unsplash

Slide 4

Slide 4

But ServerlessDays? © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Slide 5

Slide 5

Serverless is dead. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Photo by Alexander Andrews on Unsplash

Slide 6

Slide 6

It’s ok to grieve © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Photo by Justin Veenema on Unsplash

Slide 7

Slide 7

What happened? © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Slide 8

Slide 8

What happened? Coroner’s report: © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Photo by Jan Kahánek on Unsplash

Slide 9

Slide 9

What happened? Coroner’s report: Death by extreme buzzword trauma. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Photo by Jan Kahánek on Unsplash

Slide 10

Slide 10

But It’s just managed hosting! But it’s just CGI-BIN! But it’s just APIs! But it’s just like PHP! But it’s just like xinetd! BUT BUT BUT THE SERVERS! © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Photo by Holger Link on Unsplash

Slide 11

Slide 11

But the security is worse! But the security is different! But the cost is higher! It’s too easy! The name is horrible! BUT BUT BUT THE SERVERS! © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Photo by Holger Link on Unsplash

Slide 12

Slide 12

So let us pay our respects © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Photo by Mike Labrum on Unsplash

Slide 13

Slide 13

By going back to the start © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Slide 14

Slide 14

At first there was Amazon S3 © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Slide 15

Slide 15

At first there was Amazon S3* © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Slide 16

Slide 16

At first there was Amazon S3* *OK so Amazon SQS was the first service announced, S3 was the first to GA. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Slide 17

Slide 17

I have a bucket Amazon Simple Storage Service (S3) © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 2006-2014

Slide 18

Slide 18

Objects can go in Object Object Object Object Object Amazon Simple Storage Service (S3) Object Object Object Object Object Object © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 2006-2014

Slide 19

Slide 19

But then…. Object Object Object Object Object Amazon Simple Storage Service (S3) Object Object Object Object Object Object © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 2006-2014

Slide 20

Slide 20

But then what happens from here? Object Object Object Object Object Amazon Simple Storage Service (S3) Object Object Object Object Object Object © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 2006-2014 ?

Slide 21

Slide 21

Workflow for S3 stored objects 2006-2014 There were two main ways of working with data in S3 in this time: • Performing List calls, acting. Client • Parallel client calls to ”notify” some system that objects were stored, polling that system, acting. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Bucket with objects Amazon Simple Queue Service Amazon EC2 Instances

Slide 22

Slide 22

Workflow for S3 stored objects 2006-2014 There were two main ways of working with data in S3 in this time: • Performing List calls, acting. Client • Parallel client calls to ”notify” some system that objects were stored, polling that system, acting. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. This wasBucket quite with a bit of objects Amazon EC2 Instances complexity Amazon Simple Queue Service

Slide 23

Slide 23

Customers wanted this to be easier Amazon Simple Storage Service (S3) © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 2006-2014 ?

Slide 24

Slide 24

In 2013 AWS Announced Amazon Kinesis Client Client Client Client Amazon Kinesis Client Client Client https://aws.amazon.com/about-aws/whats-new/2013/11/14/introducing-amazon-kinesis/ © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Slide 25

Slide 25

In 2013 AWS Announced Amazon Kinesis Client Client Client Client Amazon Kinesis Client Client Client ? https://aws.amazon.com/about-aws/whats-new/2013/11/14/introducing-amazon-kinesis/ © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Slide 26

Slide 26

In 2013 AWS Announced Amazon Kinesis Client Amazon DynamoDB for KCL Checkpoints Client Client Client Amazon Kinesis Client Amazon EC2 Instances running the Kinesis Client Library Client Client https://aws.amazon.com/about-aws/whats-new/2013/11/14/introducing-amazon-kinesis/ © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Slide 27

Slide 27

In 2013 AWS Announced Amazon Kinesis Client Amazon DynamoDB for KCL Checkpoints Client This was quite a bit of complexity Client Client Amazon Kinesis Client Amazon EC2 Instances running the Kinesis Client Library Client Client https://aws.amazon.com/about-aws/whats-new/2013/11/14/introducing-amazon-kinesis/ © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Slide 28

Slide 28

And so in November of 2014 © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. https://www.allthingsdistributed.com/2014/11/aws-lambda.html

Slide 29

Slide 29

And so in November of 2014 © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. https://www.allthingsdistributed.com/2014/11/aws-lambda.html

Slide 30

Slide 30

And so in November of 2014 © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. https://www.allthingsdistributed.com/2014/11/aws-lambda.html

Slide 31

Slide 31

Well where did #serverless come from? © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Slide 32

Slide 32

July 19, 2010. – Techcrunch article about PiCloud © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. https://techcrunch.com/2010/07/19/picloud-launches-serverless-computing-platform-to-the-public/

Slide 33

Slide 33

July 19, 2010. – Techcrunch article about PiCloud In 2013 Dropbox acquires PiCloud, at that point branded as a “supercomputing” startup. https://www.wired.com/2013/11/dropbox-piclou/ There are no mentions of #serverless © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. https://techcrunch.com/2010/07/19/picloud-launches-serverless-computing-platform-to-the-public/

Slide 34

Slide 34

So that brings us back to… © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Slide 35

Slide 35

Amazon S3 + AWS Lambda Object Object Object Object Object Amazon Simple Storage Service (S3) Object Object Object Object Object Object © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Slide 36

Slide 36

Amazon Kinesis + AWS Lambda Client Client Client Client Client Client Client © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Kinesis

Slide 37

Slide 37

Alexa, let’s change the world. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. https://www.allthingsdistributed.com/2015/06/alexa-skills-kit.html

Slide 38

Slide 38

Alexa, let’s change the world. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. https://www.allthingsdistributed.com/2015/06/alexa-skills-kit.html

Slide 39

Slide 39

Making all of this possible … © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Slide 40

Slide 40

Lambda API API provided by the Lambda service SDK clients

  1. Lambda directly invoked via invoke API Lambda function Used by all other services that invoke Lambda across all models Supports sync and async Can pass any event payload structure you want Client included in every SDK © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Slide 41

Slide 41

Lambda API API provided by the Lambda service client = boto3.client(“lambda”) Used by all other services that SDK clients invoke Lambda across all models … 1. Lambda directly invoked via invoke API response = client.invoke( Supports sync and async FunctionName=“myFunction” InvocationType=“Event”|”RequestResponse” Lambda Can pass any event payload Payload=“json_payload” function structure you want ) Client included in every SDK © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Slide 42

Slide 42

The Lambda API provides the model for event driven applications the same way S3’s API did for storage. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Slide 43

Slide 43

And then Amazon API Gateway in July 2015 Amazon API Gateway © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Slide 44

Slide 44

Amazon API Gateway + AWS Lambda Client Client Client Client Client Amazon API Gateway Client Client © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Slide 45

Slide 45

APIs are the front door of microservices © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Photo by christian koch on Unsplash

Slide 46

Slide 46

© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Slide 47

Slide 47

Amazon S3 at launch: © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Slide 48

Slide 48

Amazon S3 today: © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Slide 49

Slide 49

APIs power all of these: iPhone ~11 years Amazon Prime ~14 years *Ages might be slightly off iPad ~9 years Netflix Streaming ~12 years Tesla Model S ~7 years Airbnb ~11 years Apple Watch ~5 years Uber ~10 years Echo ~5 years Square ~10 years Illumina DNA Sequencer ~5 years Slack ~6 years

Slide 50

Slide 50

Some people think that serverless is just for APIs! © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Slide 51

Slide 51

But it’s not. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Slide 52

Slide 52

But it’s not. TOP 10 INVOKE SERVICES BY GB-S, 4 WEEK AVERAGE, RANDOM 4 WEEK SAMPLE DynamoDB CloudWatch Logs APIGateway CloudWatch Events S3 SQS LambdaAPISync Kinesis SNS © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. LambdaAPI-ASync

Slide 53

Slide 53

OK, but back to Serverless plz © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Photo by Aaron Burden on Unsplash

Slide 54

Slide 54

Serverless == Faas? At some point Serverless start just being equated with FaaS. • • • • • No AWS announcement in 2015 called Lambda or API Gateway ”Serverless” AWS re:Invent 2015 featured talks with the word serverless in the title specific to Lambda Nov 2015 Techcrunch: “AWS Lambda Makes Serverless Applications A Reality” Feb 2016 IBM announces OpenWhisk, an open source serverless FaaS May 2016 - first Serverless Conf in NYC, ~13 months after the GA of AWS Lambda © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Slide 55

Slide 55

Serverless == Faas? And then the space grew • Nov 2016 – Azure Functions GA • Dec 2016 – OpenFaaS launch • Oct 2017 – Oracle FN Project release • Aug 2018 – Google Cloud Functions GA © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Slide 56

Slide 56

Serverless abuse But then, everything became serverless.. • • • • • • managed container offerings PaaS-like services storage services messaging services serverless the flamethrower! (Spaceballs joke) etc, etc, etc By late 2017/early 2018 the term started getting pretty stretched © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Slide 57

Slide 57

Some of us fought in vain to keep the term “pure” © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Photo by Andrew Yardley on Unsplash

Slide 58

Slide 58

But our enemies were numerous.. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Photo by Ray Hennessy on Unsplash

Slide 59

Slide 59

So does the word Serverless even matter? © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Slide 60

Slide 60

Is Serverless really just a spectrum? In a November 1st 2017 post on the A Cloud Guru blog, AWS Community Hero Ben Kehoe wrote about the “spectrum” of serverless: • Service-full + ephemeral compute • Tighter correspondence between resources used and resources billed • Smaller and more abstracted control plane https://bit.ly/2BBy4L5 © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. @ben11kehoe

Slide 61

Slide 61

The concept of the spectrum made a lot of sense Self managed FaaS © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. AWS Fargate AWS Lambda AWS AppSync

Slide 62

Slide 62

The concept of the spectrum made a lot of sense Self managed FaaS AWS Fargate AWS Lambda AWS AppSync You can measure across: cost, complexity, operational burden, flexibility, portability, etc © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Slide 63

Slide 63

The concept of the spectrum made a lot of sense Biased opinion is that gravity is dragging the industry Self managed FaaS AWS Fargate AWS Lambda AWS AppSync this way à You can measure across: cost, complexity, operational burden, flexibility, portability, etc © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Slide 64

Slide 64

Then the folks from UC Berkeley weighed in (again) © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Slide 65

Slide 65

Then the folks from UC Berkeley weighed in (again) © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Slide 66

Slide 66

So does the word Serverless even matter? © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Slide 67

Slide 67

no. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Slide 68

Slide 68

Serverless is Dead What we should instead be focusing on is what we’re seeing to be the new way of doing modern application development • • • Greatly reduced operational burden Tighter alignment to costs w/ usage Developers can/could/should be able to do almost anything • • • understated warning to Ops/DevOps/SRE/-ish folks Opinionated platforms that allow for multiple use-cases Opinionated platforms that bake in true best of breed practices, security, scale, performance, cost aspects for you © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Slide 69

Slide 69

What matters: © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Slide 70

Slide 70

Greater agility Less overhead What matters: Better focus Increased scale More flexibility Pay for value © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Slide 71

Slide 71

A promise to ourselves © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Slide 72

Slide 72

A promise to ourselves We’ll focus on the problems and solutions and not the buzzword! Don’t feed the trolls! Ignore the FUD! © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Slide 73

Slide 73

Serverless is Dead! Long live Serverless! © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Photo by Glenn Carstens-Peters on Unsplash

Slide 74

Slide 74

Hope to see you all at the next “Modern application development using managed services that provide opinionated event-driven interfaces” Days © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Slide 75

Slide 75

About me: Chris Munns - munns@amazon.com, @chrismunns • Principal Developer Advocate - Serverless • New Yorker • Previously: • AWS Business Development Manager – DevOps, July ’15 - Feb ‘17 • AWS Solutions Architect Nov, 2011- Dec 2014 • Formerly on operations teams @Etsy and @Meetup • Little time at a hedge fund, Xerox and a few other startups • Rochester Institute of Technology: Applied Networking and Systems Administration ’05 • Internet infrastructure geek © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Slide 76

Slide 76

Chris Munns munns@amazon.com @chrismunns © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. https://www.flickr.com/photos/theredproject/3302110152/

Slide 77

Slide 77

? © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. https://secure.flickr.com/photos/dullhunk/202872717/