AWS Lambda Azure Functions
Google Cloud Functions IBM OpenWhisk
SERVERLESS PLATFORMS
Slide 20
Slide 20 text
No content
Slide 21
Slide 21 text
No content
Slide 22
Slide 22 text
SERVERLESS
...AS FAR AS YOU ARE CONCERNED
Slide 23
Slide 23 text
WHAT IS LAMBDA?
Your executable code
No restrictions
Priced based on:
execution time
quantity
memory
Slide 24
Slide 24 text
LAMBDA FREE PLAN/MONTH
Slide 25
Slide 25 text
RUN THE NUMBERS
Run a Lambda function every 5 minutes
s/m 1s 5s 10s
128 3,200,000 370 74 37
256 1,600,000 185 37 18
512 800,000 93 18 9
1024 400,000 46 9 5
1536 266,666 31 6 3
0.0025 cents / second thereafter for 1.5G
Slide 26
Slide 26 text
GETTING STARTED WITH
LAMBDA
Slide 27
Slide 27 text
HOW TO CREATE A LAMBDA
FUNCTION
1. Write the code
2. Setup on AWS
3. Debug
Slide 28
Slide 28 text
LAMBDA DEMO
Slide 29
Slide 29 text
FRAMEWORKS
Slide 30
Slide 30 text
NATIVE GOTCHAS
Lambda runs on an Amazon Linux container...
...and your dev box is probably not Amazon Linux...
...so native NPM modules are problematic
Slide 31
Slide 31 text
NATIVE NPM
1. Launch Amazon Linux ec2
2. Use a node version manager
3. Install node 4.3
4. Install the native modules you need
5. Package the modules and dl to your box
6. Deploy
Slide 32
Slide 32 text
BUILDING THE DEMO WITH
NODE-LAMBDA
Four files:
1. package.json
2. .env
3. event.json
4. index.js
Slide 33
Slide 33 text
LAMBDA BEST PRACTICES
Minimize startup
Core logic into module
Monitor
Delete old functions
Slide 34
Slide 34 text
MONITORING 101
the tl;dr version
Slide 35
Slide 35 text
COLLECTING DATA IS CHEAP
Slide 36
Slide 36 text
COLLECTING DATA IS CHEAP
NOT HAVING IT WHEN YOU NEED IT IS EXPENSIVE
Slide 37
Slide 37 text
No content
Slide 38
Slide 38 text
THE FRAMEWORK
Slide 39
Slide 39 text
THE FRAMEWORK
Slide 40
Slide 40 text
THE FRAMEWORK
Slide 41
Slide 41 text
THE FRAMEWORK
Slide 42
Slide 42 text
No content
Slide 43
Slide 43 text
No content
Slide 44
Slide 44 text
No content
Slide 45
Slide 45 text
MONITORING LAMBDA
Slide 46
Slide 46 text
WHAT ARE THE LAMBDA
METRICS
aws.lambda.duration, min, max, sum
aws.lambda.errors
aws.lambda.invocations
aws.lambda.throttles
Slide 47
Slide 47 text
3 OPTIONS FOR MONITORING
LAMBDA
1. Add a custom metric to CloudWatch
2. Add metric directly to monitoring application
3. Add a line to the CloudWatch logs
Slide 48
Slide 48 text
HOW WE DO IT
Add a line to the CloudWatch logs:
!"
Slide 49
Slide 49 text
MONITORING EXAMPLE
Slide 50
Slide 50 text
MONITORING EXAMPLE
Slide 51
Slide 51 text
MONITORING EXAMPLE
Slide 52
Slide 52 text
No content
Slide 53
Slide 53 text
MATT WILLIAMS
EVANGELIST @ DATADOG
[email protected] | @TECHNOVANGELIST