what’s all the fuss about serverless?...tweet to sheet master plan tweet @taylorkrusen and include...

47
What’s All the Fuss About Serverless? May 13th, 2019

Upload: others

Post on 18-Feb-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: What’s All the Fuss About Serverless?...Tweet to Sheet Master Plan Tweet @TaylorKrusen and include the hashtag #Jokes Your tweet is added to sheet. Review list at end. Participate?!

What’s All the Fuss About Serverless?

May 13th, 2019

Page 2: What’s All the Fuss About Serverless?...Tweet to Sheet Master Plan Tweet @TaylorKrusen and include the hashtag #Jokes Your tweet is added to sheet. Review list at end. Participate?!

Let’s talk about Serverless Hello!

I’m Taylor Krusen.I work for Dropbox. Twitter: @TaylorKrusen

Page 3: What’s All the Fuss About Serverless?...Tweet to Sheet Master Plan Tweet @TaylorKrusen and include the hashtag #Jokes Your tweet is added to sheet. Review list at end. Participate?!

Overview

● Serverless as a concept

● Reasons for popularity

● Pragmatic usage

What I’ll cover

Who is this talk for?

Goals

● Curiosity / interest in serverless

● Limited or no exposure to serverless

Developers with…

● Understand serverless and the situations where

it will benefit you

● Look past marketing jargon

● Navigate the ecosystem of tools

● Get excited about serverless

Page 4: What’s All the Fuss About Serverless?...Tweet to Sheet Master Plan Tweet @TaylorKrusen and include the hashtag #Jokes Your tweet is added to sheet. Review list at end. Participate?!

Tweet to Sheet

Twitter: @TaylorKrusen

Page 5: What’s All the Fuss About Serverless?...Tweet to Sheet Master Plan Tweet @TaylorKrusen and include the hashtag #Jokes Your tweet is added to sheet. Review list at end. Participate?!

Tweet to Sheet Master Plan

● Tweet @TaylorKrusen and include the hashtag #Jokes

● Your tweet is added to sheet. Review list at end.

Participate?!

● Webhook fires on

account activity

● Code runs on AWS

Lambda

● Specific tweets

written to sheet

Page 6: What’s All the Fuss About Serverless?...Tweet to Sheet Master Plan Tweet @TaylorKrusen and include the hashtag #Jokes Your tweet is added to sheet. Review list at end. Participate?!

Serverless

Page 7: What’s All the Fuss About Serverless?...Tweet to Sheet Master Plan Tweet @TaylorKrusen and include the hashtag #Jokes Your tweet is added to sheet. Review list at end. Participate?!

Popularity

Page 8: What’s All the Fuss About Serverless?...Tweet to Sheet Master Plan Tweet @TaylorKrusen and include the hashtag #Jokes Your tweet is added to sheet. Review list at end. Participate?!
Page 9: What’s All the Fuss About Serverless?...Tweet to Sheet Master Plan Tweet @TaylorKrusen and include the hashtag #Jokes Your tweet is added to sheet. Review list at end. Participate?!

Here is my source code,Run it on the cloud for me,I do not care how

https://twitter.com/onsijoe/status/598235841635360768

Page 10: What’s All the Fuss About Serverless?...Tweet to Sheet Master Plan Tweet @TaylorKrusen and include the hashtag #Jokes Your tweet is added to sheet. Review list at end. Participate?!

Serverless

??

Only charged for code that runs

Don’t need to own or provision a server.

Managed FaaS in the cloud.

Abstraction

Event-driven

Pay-per-use

Page 11: What’s All the Fuss About Serverless?...Tweet to Sheet Master Plan Tweet @TaylorKrusen and include the hashtag #Jokes Your tweet is added to sheet. Review list at end. Participate?!

Serverless SpectrumMoreServerless

Less Serverless

- Reliance on BaaS (third-party services)

- Ephemeral computing

- Degree of ‘control’ over server

- Coupling of resources used and resources billed

Degree of serverlessness

‘The Serverless Spectrum’ by Ben Kehoe

Page 12: What’s All the Fuss About Serverless?...Tweet to Sheet Master Plan Tweet @TaylorKrusen and include the hashtag #Jokes Your tweet is added to sheet. Review list at end. Participate?!

““Abstraction is selective ignorance”- Andrew Koenig

Page 13: What’s All the Fuss About Serverless?...Tweet to Sheet Master Plan Tweet @TaylorKrusen and include the hashtag #Jokes Your tweet is added to sheet. Review list at end. Participate?!

Alphabet Soup● FaaS = Function as a Service

○ Allows users to develop, run and manage app functionalities without building or

maintaining the related infrastructure.

● BaaS = Backend as a Service○ Middleware that allows developers to connect their app to cloud services.

● PaaS = Platform as a Service○ Similar to FaaS, but different architecture and scaling.

○ Long running application thread.

○ Bill per time running rather than by execution.

● IaaS = Infrastructure as a Service○ Hardware is provided and managed by an external vendor.

● Ephemeral ○ Something short-lived or temporary.

● Server○ A computer device or program that provides

functionality for other programs / devices.

Page 14: What’s All the Fuss About Serverless?...Tweet to Sheet Master Plan Tweet @TaylorKrusen and include the hashtag #Jokes Your tweet is added to sheet. Review list at end. Participate?!

On-Prem IaaS PaaS Serverless

Page 15: What’s All the Fuss About Serverless?...Tweet to Sheet Master Plan Tweet @TaylorKrusen and include the hashtag #Jokes Your tweet is added to sheet. Review list at end. Participate?!

Evolution of Cloud Offerings

Applications

Data

Runtime

Middleware

O/S

Virtualization

Servers

Storage

Networking

On Premise

You

Applications

Data

Runtime

Middleware

O/S

Virtualization

Servers

Storage

Networking

IaaS

You

Vendor

Applications

Data

Runtime

Middleware

O/S

Virtualization

Servers

Storage

Networking

PaaS

You

Vendor

BaaSServerless

Sandbox

Everything else

You

Vendor

Buy instead

of Build

Page 16: What’s All the Fuss About Serverless?...Tweet to Sheet Master Plan Tweet @TaylorKrusen and include the hashtag #Jokes Your tweet is added to sheet. Review list at end. Participate?!

Client FaaS

Authentication

Search

Database

BaaSapps

Backend-as-a-Service

Serverless and the Serviceful paradigm

Page 17: What’s All the Fuss About Serverless?...Tweet to Sheet Master Plan Tweet @TaylorKrusen and include the hashtag #Jokes Your tweet is added to sheet. Review list at end. Participate?!
Page 18: What’s All the Fuss About Serverless?...Tweet to Sheet Master Plan Tweet @TaylorKrusen and include the hashtag #Jokes Your tweet is added to sheet. Review list at end. Participate?!
Page 19: What’s All the Fuss About Serverless?...Tweet to Sheet Master Plan Tweet @TaylorKrusen and include the hashtag #Jokes Your tweet is added to sheet. Review list at end. Participate?!
Page 20: What’s All the Fuss About Serverless?...Tweet to Sheet Master Plan Tweet @TaylorKrusen and include the hashtag #Jokes Your tweet is added to sheet. Review list at end. Participate?!

Winners

Enterprise Startup and small business

Page 21: What’s All the Fuss About Serverless?...Tweet to Sheet Master Plan Tweet @TaylorKrusen and include the hashtag #Jokes Your tweet is added to sheet. Review list at end. Participate?!

Why

● Developers can focus on business value

● Auto-scaling web apps and APIs

● Disruptive pricing model

https://www.bbva.com/en/economics-of-serverless/

$$

Usage

EC2

Serverless

Page 22: What’s All the Fuss About Serverless?...Tweet to Sheet Master Plan Tweet @TaylorKrusen and include the hashtag #Jokes Your tweet is added to sheet. Review list at end. Participate?!

Less control

Speed / Velocity / Agility

● No knobs to tweak

Benefits and Compromises

● Faster time to market● Less to build

Simplicity● Very easy for users of

the FaaSArchitectural complexity

● ‘mini monoliths’● Someone needs to wrap their

head around everything

Stateless

Lack of tooling

Page 23: What’s All the Fuss About Serverless?...Tweet to Sheet Master Plan Tweet @TaylorKrusen and include the hashtag #Jokes Your tweet is added to sheet. Review list at end. Participate?!

Implementation drawbacksLower operational burden

● Integration testing● Versioning / packaging● May need seperate FaaS for

everything

Benefits and Compromises

● Outsourced infrastructure● Fewer people● ‘Better’ security and reliability

Reliance on 3rd party tools● Effectiveness● Reliability● Vendor lock-in● Risk

Page 24: What’s All the Fuss About Serverless?...Tweet to Sheet Master Plan Tweet @TaylorKrusen and include the hashtag #Jokes Your tweet is added to sheet. Review list at end. Participate?!

Serverless is a way to focus on business value.

Benefits and Compromises

~ Ben Kehoe -- Serverless is a State of Mind“

Page 25: What’s All the Fuss About Serverless?...Tweet to Sheet Master Plan Tweet @TaylorKrusen and include the hashtag #Jokes Your tweet is added to sheet. Review list at end. Participate?!

Shifting Paradigms

Page 26: What’s All the Fuss About Serverless?...Tweet to Sheet Master Plan Tweet @TaylorKrusen and include the hashtag #Jokes Your tweet is added to sheet. Review list at end. Participate?!

Serverless Architecture

Page 27: What’s All the Fuss About Serverless?...Tweet to Sheet Master Plan Tweet @TaylorKrusen and include the hashtag #Jokes Your tweet is added to sheet. Review list at end. Participate?!

’Serverless Microservice Patterns for AWS’ by Jeremy Daly

https://www.jeremydaly.com/serverless-microservice-patterns-for-aws/

Building Differently

Page 28: What’s All the Fuss About Serverless?...Tweet to Sheet Master Plan Tweet @TaylorKrusen and include the hashtag #Jokes Your tweet is added to sheet. Review list at end. Participate?!

Use Cases

Scripts triggered by events• Your custom code reacts to ‘events’.

• Cron job: trigger functions on a schedule.

Web applications

• UI driven application calling HTTP

endpoints that trigger your code

• External: web hook

• Internal: closed ecosystem like Lambda and an s3

event

Page 29: What’s All the Fuss About Serverless?...Tweet to Sheet Master Plan Tweet @TaylorKrusen and include the hashtag #Jokes Your tweet is added to sheet. Review list at end. Participate?!

Schneider Electric

Page 30: What’s All the Fuss About Serverless?...Tweet to Sheet Master Plan Tweet @TaylorKrusen and include the hashtag #Jokes Your tweet is added to sheet. Review list at end. Participate?!

Serverless Economy

Page 31: What’s All the Fuss About Serverless?...Tweet to Sheet Master Plan Tweet @TaylorKrusen and include the hashtag #Jokes Your tweet is added to sheet. Review list at end. Participate?!

A web app is more than FaaS…

Typically consists of:

- Lambda

- API Gateway (HTTP endpoints)

- S3 to serve static content

- DynamoDB

- Many others…

Serverless Web Apps

Page 32: What’s All the Fuss About Serverless?...Tweet to Sheet Master Plan Tweet @TaylorKrusen and include the hashtag #Jokes Your tweet is added to sheet. Review list at end. Participate?!

TimerCheck.io- Over 2m requests

- 300k+ seconds of compute

Hidden Costs

Page 33: What’s All the Fuss About Serverless?...Tweet to Sheet Master Plan Tweet @TaylorKrusen and include the hashtag #Jokes Your tweet is added to sheet. Review list at end. Participate?!

Major Players

• Serverless offering: Azure Functions

• Launched in March, 2016

• Serverless offering: Cloud Functions

• Launched in March, 2017

• General Availability on July 24, 2018

• Serverless offering: Cloud Functions

• Launched in Dec, 2017

• Available as ‘OpenWhisk’ in Dec, 2016

• Serverless offering: Lambda

• Launched in Nov, 2014

• Most mature ecosystem

Page 34: What’s All the Fuss About Serverless?...Tweet to Sheet Master Plan Tweet @TaylorKrusen and include the hashtag #Jokes Your tweet is added to sheet. Review list at end. Participate?!

Cloud Fight

• Runs on Windows environment

• Multiple functions grouped

together as an application

• Provisions memory per

application

• Platform is very user friendly

• Robust developer resources

• Runs on Linux environment

• Functions built as standalone

elements

• Provisions memory per

function

• Better scaling for HTTP

endpoints

Lambda Azure Functions

The Future?

Page 35: What’s All the Fuss About Serverless?...Tweet to Sheet Master Plan Tweet @TaylorKrusen and include the hashtag #Jokes Your tweet is added to sheet. Review list at end. Participate?!

IBM ($)

Serverless Providers

Microsoft ($)AWS ($) Google ($)

0.00 0.00 0.00 0.0018.55 4.40 9.76 3.83

799.76 603.40 709.95 630.7022,667.13 20,093.40 23,321.20 21,243.20

LMH!!

L =1,000ms & 128mb &

1m exececutions

M =1,000ms & 128mb &

5m exececutions

H =3,000ms & 256mb &

50m exececutions

!! =5,000ms & 512mb &

500m exececutions

Estimates via serverlesscalc.com from @acloudguru

Page 36: What’s All the Fuss About Serverless?...Tweet to Sheet Master Plan Tweet @TaylorKrusen and include the hashtag #Jokes Your tweet is added to sheet. Review list at end. Participate?!

IBM

Supported Languages

MicrosoftAmazon Google

Node.js Y Y Y YPython Y Partial Partial YJava Y N N YC# Y Y N YGo Y N N YF# N Y N Y

Swift N N N YPHP N Partial N Y

Language

Page 37: What’s All the Fuss About Serverless?...Tweet to Sheet Master Plan Tweet @TaylorKrusen and include the hashtag #Jokes Your tweet is added to sheet. Review list at end. Participate?!

Serverless ProvidersOther points of consideration?

● Your specific needs● Ecosystem ● Community

Auth0’s Webtask

Oracle’s Fn Project

Apache’s OpenWhisk

Page 38: What’s All the Fuss About Serverless?...Tweet to Sheet Master Plan Tweet @TaylorKrusen and include the hashtag #Jokes Your tweet is added to sheet. Review list at end. Participate?!

- Open source serverless platform

- Can run locally out of a container

- Choose your cloud (or host it yourself)

- Reusable and extensible

- Good introduction to distributed systems

- Any language!!

Page 39: What’s All the Fuss About Serverless?...Tweet to Sheet Master Plan Tweet @TaylorKrusen and include the hashtag #Jokes Your tweet is added to sheet. Review list at end. Participate?!

Deploy your serverless code to:● AWS Lambda● Azure Functions● Google Cloud Functions● IBM Cloud Functions● Others…

Page 40: What’s All the Fuss About Serverless?...Tweet to Sheet Master Plan Tweet @TaylorKrusen and include the hashtag #Jokes Your tweet is added to sheet. Review list at end. Participate?!

State of Serverless

Page 41: What’s All the Fuss About Serverless?...Tweet to Sheet Master Plan Tweet @TaylorKrusen and include the hashtag #Jokes Your tweet is added to sheet. Review list at end. Participate?!

Steadily Moving Forward

• Lambda Runtime API

• Lambda Layers

• Websocket support in API Gateway & Lambda

• AWS IDE integration

• AWS Firecracker goes open-source

• Aurora

• DynamoDB on demand

• Timestream timeseries database

Lambda

(Can we please stop talking about AWS now?)

Page 42: What’s All the Fuss About Serverless?...Tweet to Sheet Master Plan Tweet @TaylorKrusen and include the hashtag #Jokes Your tweet is added to sheet. Review list at end. Participate?!

Cold Starts

https://mikhail.io/2018/08/serverless-cold-start-war/

Page 43: What’s All the Fuss About Serverless?...Tweet to Sheet Master Plan Tweet @TaylorKrusen and include the hashtag #Jokes Your tweet is added to sheet. Review list at end. Participate?!
Page 44: What’s All the Fuss About Serverless?...Tweet to Sheet Master Plan Tweet @TaylorKrusen and include the hashtag #Jokes Your tweet is added to sheet. Review list at end. Participate?!

• Task: calculate all prime numbers less than

1,000,000.

https://www.slideshare.net/ChrisMunns/aws-startup-day-boston-2018-the-best-practices-and-hard-lessons-learned-of-serverless-applications

Page 45: What’s All the Fuss About Serverless?...Tweet to Sheet Master Plan Tweet @TaylorKrusen and include the hashtag #Jokes Your tweet is added to sheet. Review list at end. Participate?!
Page 46: What’s All the Fuss About Serverless?...Tweet to Sheet Master Plan Tweet @TaylorKrusen and include the hashtag #Jokes Your tweet is added to sheet. Review list at end. Participate?!

• Open specification about event metadata

• Interoperable cloud architectures

• Distributed data across vendors and clouds

What

• Support from IBM, Google, Red Hat, many more

• First class support from Microsoft Azure

Who

Why

The Serverless and Event-Driven Futurehttps://www.youtube.com/watch?v=TZPPjAv12KU

Page 47: What’s All the Fuss About Serverless?...Tweet to Sheet Master Plan Tweet @TaylorKrusen and include the hashtag #Jokes Your tweet is added to sheet. Review list at end. Participate?!

Questions?Twitter: @TaylorKrusen

… and #Jokes Review!