Serverless Computing - SITA · Serverless computing –Lambda 3. Let’sspeak –Alexa 4. Real-Time...

38
Serverless Computing Tomasz Stachlewski AWS Solutions Architect [email protected]

Transcript of Serverless Computing - SITA · Serverless computing –Lambda 3. Let’sspeak –Alexa 4. Real-Time...

Page 1: Serverless Computing - SITA · Serverless computing –Lambda 3. Let’sspeak –Alexa 4. Real-Time processing 5. Smart applications ... developers customers build test release plan

Serverless Computing

Tomasz Stachlewski

AWS Solutions Architect

[email protected]

Page 2: Serverless Computing - SITA · Serverless computing –Lambda 3. Let’sspeak –Alexa 4. Real-Time processing 5. Smart applications ... developers customers build test release plan

1. From Monolith to Microservices

2. Serverless computing – Lambda

3. Let’s speak – Alexa

4. Real-Time processing

5. Smart applications

Topics to discuss

Page 3: Serverless Computing - SITA · Serverless computing –Lambda 3. Let’sspeak –Alexa 4. Real-Time processing 5. Smart applications ... developers customers build test release plan

developers customers

releasetestbuild

plan monitor

delivery pipeline

feedback loop

Software development lifecycle

Page 4: Serverless Computing - SITA · Serverless computing –Lambda 3. Let’sspeak –Alexa 4. Real-Time processing 5. Smart applications ... developers customers build test release plan

Monolith development lifecycle

developers

releasetestbuild

delivery pipelinemonolithic

app

Page 5: Serverless Computing - SITA · Serverless computing –Lambda 3. Let’sspeak –Alexa 4. Real-Time processing 5. Smart applications ... developers customers build test release plan

Microservice development lifecycle

developers delivery pipelinesservices

releasetestbuild

releasetestbuild

releasetestbuild

releasetestbuild

releasetestbuild

releasetestbuild

Page 6: Serverless Computing - SITA · Serverless computing –Lambda 3. Let’sspeak –Alexa 4. Real-Time processing 5. Smart applications ... developers customers build test release plan

The looser they are coupled,

the bigger they scale,

the more fault tolerant they get.

The less dependencies,

the faster you innovate.

Decouple into small building blocks

Page 7: Serverless Computing - SITA · Serverless computing –Lambda 3. Let’sspeak –Alexa 4. Real-Time processing 5. Smart applications ... developers customers build test release plan

Microservices

Single-Purpose

Connected through APIs

Highly decoupled

Amazon.com microservice architecture

Page 8: Serverless Computing - SITA · Serverless computing –Lambda 3. Let’sspeak –Alexa 4. Real-Time processing 5. Smart applications ... developers customers build test release plan

CONTINUOUS

DEPLOYMENT

SMALL, FREQUENT CHANGES

CONSTANTLY INTEGRATING INTO

PRODUCTION.

Page 9: Serverless Computing - SITA · Serverless computing –Lambda 3. Let’sspeak –Alexa 4. Real-Time processing 5. Smart applications ... developers customers build test release plan

= 50 million deployments a year

Thousands of teams

× Microservice architecture

× Continuous delivery

× Multiple environments

Page 10: Serverless Computing - SITA · Serverless computing –Lambda 3. Let’sspeak –Alexa 4. Real-Time processing 5. Smart applications ... developers customers build test release plan

11.6s

Average time

between

deployments

(weekday)

1,079

Max number of

deployments in a

single hour

(or approx every

3 seconds)

30,000

Max number of

instances

simultaneously

receiving a

deployment

Speed of deployments at amazon.com

~0.001%

Software

deployments cause

an

outage

Page 11: Serverless Computing - SITA · Serverless computing –Lambda 3. Let’sspeak –Alexa 4. Real-Time processing 5. Smart applications ... developers customers build test release plan

Traditional way…

ServerServer

ServerServer

Users

Requests

Responses

How to Scale? Based on what metric? How fast?

What about resiliency? HA?

What about idle time?

How many people should maintain it?

Page 12: Serverless Computing - SITA · Serverless computing –Lambda 3. Let’sspeak –Alexa 4. Real-Time processing 5. Smart applications ... developers customers build test release plan

No Server is Easier to Manage

Than “No Server”

Werner Vogels, Amazon CTO

Page 13: Serverless Computing - SITA · Serverless computing –Lambda 3. Let’sspeak –Alexa 4. Real-Time processing 5. Smart applications ... developers customers build test release plan

Servers• No visibility of underlying servers, storage and networking

Operating System• No need to select, configure, administer or patch the OS

Capacity• Elastic and (virtually) unlimited

Availability• Service is natively replicated and highly-available across multiple

Availability Zones

An Amazon definition of “Serverless”

Page 14: Serverless Computing - SITA · Serverless computing –Lambda 3. Let’sspeak –Alexa 4. Real-Time processing 5. Smart applications ... developers customers build test release plan

Lambda = MicroService without servers

AWS Lambda

Page 15: Serverless Computing - SITA · Serverless computing –Lambda 3. Let’sspeak –Alexa 4. Real-Time processing 5. Smart applications ... developers customers build test release plan

Continuous

scaling Never pay for idle –

no under-used

servers

Benefits of AWS Lambda

No Servers to

Manage

Page 16: Serverless Computing - SITA · Serverless computing –Lambda 3. Let’sspeak –Alexa 4. Real-Time processing 5. Smart applications ... developers customers build test release plan

L E T S I M A G I N E …

Flight Status

Flight:

Date:

“Flight Status Check”

Microservice

Internal

SystemDCS GDS

Page 17: Serverless Computing - SITA · Serverless computing –Lambda 3. Let’sspeak –Alexa 4. Real-Time processing 5. Smart applications ... developers customers build test release plan

L E T S I M A G I N E … E X A M P L E 2

Promotion

Registration

Name

E-Mail

“Promotion Registration”

Microservice

DynamoDB

(Serverless

Database)

Page 18: Serverless Computing - SITA · Serverless computing –Lambda 3. Let’sspeak –Alexa 4. Real-Time processing 5. Smart applications ... developers customers build test release plan

Enabling voice-based interactions

Page 19: Serverless Computing - SITA · Serverless computing –Lambda 3. Let’sspeak –Alexa 4. Real-Time processing 5. Smart applications ... developers customers build test release plan

KAYAK

ALEXA - LET’ S SPEAK WITH APPLICATIONS

My Airport Info

SkyScanner

Page 20: Serverless Computing - SITA · Serverless computing –Lambda 3. Let’sspeak –Alexa 4. Real-Time processing 5. Smart applications ... developers customers build test release plan

Create Great Content:

ASK is how you connectto your consumer

T H E A L E X A E C O S Y S T E M

A L E X AV O I C ES E R V I C E

Unparalleled Distribution:

AVS allows your contentto be everywhere

Lives In The Cloud

Automated Speech Recognition (ASR)

Natural Language Understanding (NLU)

Always Learning

A L E X AS K I L L SK I T

Page 21: Serverless Computing - SITA · Serverless computing –Lambda 3. Let’sspeak –Alexa 4. Real-Time processing 5. Smart applications ... developers customers build test release plan

L E T S I M A G I N E … E X A M P L E 1

Flight Status

Flight:

Date:

“Flight Status Check”

Microservice

Internal

SystemDCS GDS

Page 22: Serverless Computing - SITA · Serverless computing –Lambda 3. Let’sspeak –Alexa 4. Real-Time processing 5. Smart applications ... developers customers build test release plan

L E T S I M A G I N E …

“Flight Status Check”

Microservice

Internal

SystemDCS GDS

SITA. What is

the status of

flight LH435

today?

The scheduled

departure is

planned for 2.50

pm. On-time

Page 23: Serverless Computing - SITA · Serverless computing –Lambda 3. Let’sspeak –Alexa 4. Real-Time processing 5. Smart applications ... developers customers build test release plan

Real-Time processing

Page 24: Serverless Computing - SITA · Serverless computing –Lambda 3. Let’sspeak –Alexa 4. Real-Time processing 5. Smart applications ... developers customers build test release plan

x 1 000

clients

x 10 000

events

Kinesis

Firehose

Near Real-Time

Automatic Elasticity

Easy to Use

Pay Only for What You Use

Real-Time processing - Kinesis

Kinesis

Analytics

Page 25: Serverless Computing - SITA · Serverless computing –Lambda 3. Let’sspeak –Alexa 4. Real-Time processing 5. Smart applications ... developers customers build test release plan

E X A M P L E : I N T E R N E T B O O K I N G E N G I N E

STEP 1

LoginSTEP 2

Select destination

STEP 6

PaySTEP 7

Get the booking

STEP 3

Review the offer

STEP 4

Choose the flight

STEP 5

Select Ancillaries

x 10 000 clients

x 100 000 events

infinite amount of information

Page 26: Serverless Computing - SITA · Serverless computing –Lambda 3. Let’sspeak –Alexa 4. Real-Time processing 5. Smart applications ... developers customers build test release plan

E X A M P L E : I N T E R N E T B O O K I N G E N G I N E

STEP 1

LoginSTEP 2

Select destinationSTEP 3

Review the offer

STEP 4

Choose the flight

STEP 5

Select AncillariesReal-Time Analytics

Page 27: Serverless Computing - SITA · Serverless computing –Lambda 3. Let’sspeak –Alexa 4. Real-Time processing 5. Smart applications ... developers customers build test release plan

E X A M P L E : I N T E R N E T B O O K I N G E N G I N E

Real-Time

Analytics

Internet

Booking

Engine

Real-Time

Information

Continuous

Improvement

Page 28: Serverless Computing - SITA · Serverless computing –Lambda 3. Let’sspeak –Alexa 4. Real-Time processing 5. Smart applications ... developers customers build test release plan

Example - AWS IoT

Page 29: Serverless Computing - SITA · Serverless computing –Lambda 3. Let’sspeak –Alexa 4. Real-Time processing 5. Smart applications ... developers customers build test release plan

Baggage Hall

Page 30: Serverless Computing - SITA · Serverless computing –Lambda 3. Let’sspeak –Alexa 4. Real-Time processing 5. Smart applications ... developers customers build test release plan

Baggage Hall

AirFriendly

Your bag will be

ready to collect

from belt 3 in 15

seconds.

Real-Time

Information

Page 31: Serverless Computing - SITA · Serverless computing –Lambda 3. Let’sspeak –Alexa 4. Real-Time processing 5. Smart applications ... developers customers build test release plan

Smart applications

Page 32: Serverless Computing - SITA · Serverless computing –Lambda 3. Let’sspeak –Alexa 4. Real-Time processing 5. Smart applications ... developers customers build test release plan

Machine learning and smart applications

Machine learning is the technology that

automatically finds patterns in your data

and uses them to make predictions for new

data points as they become available

Your data + machine learning = smart applications

Page 33: Serverless Computing - SITA · Serverless computing –Lambda 3. Let’sspeak –Alexa 4. Real-Time processing 5. Smart applications ... developers customers build test release plan

Traditional way of targeting clients…

Dear Mr. Smith,

We have got new awesome holiday promotion.

2 weeks on Majorca in 5 start hotel for just

$499.99!

Page 34: Serverless Computing - SITA · Serverless computing –Lambda 3. Let’sspeak –Alexa 4. Real-Time processing 5. Smart applications ... developers customers build test release plan

Traditional way of targeting clients…

How to choose clients from our database? Lets select those customer who already:

- were using service in last 6 months…

- who stayed in 5 start hotel…

- … or maybe 4 star hotel is also OK

- who bough summer trip…

- which bought trip for > $1000

- or maybe >$1200

- maybe we should select all customers from last 12 months..

- …

- …

Page 35: Serverless Computing - SITA · Serverless computing –Lambda 3. Let’sspeak –Alexa 4. Real-Time processing 5. Smart applications ... developers customers build test release plan

Introducing Amazon Machine Learning

Easy-to-use, managed machine learning service built for developers

Robust, powerful machine learning technology based on Amazon’s internal systems

Create models using your data already stored in the AWS Cloud

Deploy models to production in seconds

Page 36: Serverless Computing - SITA · Serverless computing –Lambda 3. Let’sspeak –Alexa 4. Real-Time processing 5. Smart applications ... developers customers build test release plan

E X A M P L E : A N C I L L A R I E S

BUY CAR!

EXTRA BAG?!

ROOM

UPGRADE?

RENT LIMO! EXTRA TRIP?

Page 37: Serverless Computing - SITA · Serverless computing –Lambda 3. Let’sspeak –Alexa 4. Real-Time processing 5. Smart applications ... developers customers build test release plan

E X A M P L E : A N C I L L A R I E S

Internet

Booking

Engine

ReservationsMachine

Learning

Ancillaries

Model

Page 38: Serverless Computing - SITA · Serverless computing –Lambda 3. Let’sspeak –Alexa 4. Real-Time processing 5. Smart applications ... developers customers build test release plan

?Questions?

[email protected]