Slide 1

Slide 1 text

SERVERLESS MICROSERVICES By AlexTamoykin.com

Slide 2

Slide 2 text

ALEX TAMOYKIN Co-Founder, CTO @ Shuttle Finance Founder, CTO @ The Right Balance Formerly: ATV/Dreamworks, Victorious, Zestfinance

Slide 3

Slide 3 text

AGENDA WHY WHAT HOW

Slide 4

Slide 4 text

WHY

Slide 5

Slide 5 text

DEALING WITH SERVERS TAKES TIME

Slide 6

Slide 6 text

SCALING SERVERS IS HARD AND EXPENSIVE

Slide 7

Slide 7 text

MONOLITH DOESN’T SCALE

Slide 8

Slide 8 text

WHAT SERVERLESS MICRO SERVICES

Slide 9

Slide 9 text

DEPLOYMENT EVOLUTION PHYSICAL SERVERS VIRTUALIZATION FUNCTIONS

Slide 10

Slide 10 text

SERVERLESS - NO SERVERS TO MANAGE - AUTOSCALING OUT OF THE BOX - PAY PER REQUEST TIME

Slide 11

Slide 11 text

MICROSERVICES MONOLITH

Slide 12

Slide 12 text

SERVERLESS MICROSERVICES The best of both words

Slide 13

Slide 13 text

HOW

Slide 14

Slide 14 text

CREATE A LAMBDA HANDLER module.exports.hello = (event, context, callback) => { const response = { statusCode: 200, body: JSON.stringify({ message: 'Yay', input: event, }), }; callback(null, response); };

Slide 15

Slide 15 text

LAMBDA TRIGGER

Slide 16

Slide 16 text

TEMPLATIZE IT WITH SERVERLESS FRAMEWORK https://serverless.com

Slide 17

Slide 17 text

SERVERLESS.YML functions: hello: handler: handler.hello events: - http: path: hello method: get

Slide 18

Slide 18 text

$ SERVERLESS DEPLOY

Slide 19

Slide 19 text

SERVERLESS MICROSERVICES HTTP S3 SNS SNS DynamoDB RDS SES

Slide 20

Slide 20 text

SERVERLESS GOTCHAS ➤ FUNCTION EXECUTION IS CAPPED AT 5 MINUTES. ➤ FUNCTIONS CAN’T HOLD STATE. ➤ WARM UP TIMES. ➤ DEPLOYMENT PACKAGE LIMITS. ➤ TRY / CATCH EXCEPTIONS YOURSELF.

Slide 21

Slide 21 text

ITERATE AND INNOVATE

Slide 22

Slide 22 text

THANKS Blog: https://AlexTamoykin.com LinkedIn: https://www.linkedin.com/in/alextamoykin/ Twitter: https://twitter.com/fsproru