AWS Lambda and #serverless. · Source: loosely based on IBM’s OpenWhisk architecture. Chalmers...
Transcript of AWS Lambda and #serverless. · Source: loosely based on IBM’s OpenWhisk architecture. Chalmers...
![Page 1: AWS Lambda and #serverless. · Source: loosely based on IBM’s OpenWhisk architecture. Chalmers !11 No state. Chalmers !12 No state Hard cap on max. execution time. Chalmers !13](https://reader030.fdocuments.net/reader030/viewer/2022041100/5ed79abd30ed446bab02c523/html5/thumbnails/1.jpg)
Joint work with Erik Wittern and Waldemar Hummer Josef Spillner
AWS Lambda and #serverless. What’s all the fuzz about?
Philipp Leitner
@xLeitix
![Page 2: AWS Lambda and #serverless. · Source: loosely based on IBM’s OpenWhisk architecture. Chalmers !11 No state. Chalmers !12 No state Hard cap on max. execution time. Chalmers !13](https://reader030.fdocuments.net/reader030/viewer/2022041100/5ed79abd30ed446bab02c523/html5/thumbnails/2.jpg)
Chalmers !2
https://icet-lab.eu
@IcetLab
We are hiring a postdoc!!
![Page 3: AWS Lambda and #serverless. · Source: loosely based on IBM’s OpenWhisk architecture. Chalmers !11 No state. Chalmers !12 No state Hard cap on max. execution time. Chalmers !13](https://reader030.fdocuments.net/reader030/viewer/2022041100/5ed79abd30ed446bab02c523/html5/thumbnails/3.jpg)
Chalmers !3
Function-as-a-Service?
![Page 4: AWS Lambda and #serverless. · Source: loosely based on IBM’s OpenWhisk architecture. Chalmers !11 No state. Chalmers !12 No state Hard cap on max. execution time. Chalmers !13](https://reader030.fdocuments.net/reader030/viewer/2022041100/5ed79abd30ed446bab02c523/html5/thumbnails/4.jpg)
Chalmers !4
Function-as-a-Service? Serverless?
![Page 5: AWS Lambda and #serverless. · Source: loosely based on IBM’s OpenWhisk architecture. Chalmers !11 No state. Chalmers !12 No state Hard cap on max. execution time. Chalmers !13](https://reader030.fdocuments.net/reader030/viewer/2022041100/5ed79abd30ed446bab02c523/html5/thumbnails/5.jpg)
Chalmers !5
Source: https://aws.amazon.com/lambda/
![Page 6: AWS Lambda and #serverless. · Source: loosely based on IBM’s OpenWhisk architecture. Chalmers !11 No state. Chalmers !12 No state Hard cap on max. execution time. Chalmers !13](https://reader030.fdocuments.net/reader030/viewer/2022041100/5ed79abd30ed446bab02c523/html5/thumbnails/6.jpg)
Chalmers !6
Source: https://aws.amazon.com/lambda/
![Page 7: AWS Lambda and #serverless. · Source: loosely based on IBM’s OpenWhisk architecture. Chalmers !11 No state. Chalmers !12 No state Hard cap on max. execution time. Chalmers !13](https://reader030.fdocuments.net/reader030/viewer/2022041100/5ed79abd30ed446bab02c523/html5/thumbnails/7.jpg)
Chalmers !7
Source: https://aws.amazon.com/lambda/
![Page 8: AWS Lambda and #serverless. · Source: loosely based on IBM’s OpenWhisk architecture. Chalmers !11 No state. Chalmers !12 No state Hard cap on max. execution time. Chalmers !13](https://reader030.fdocuments.net/reader030/viewer/2022041100/5ed79abd30ed446bab02c523/html5/thumbnails/8.jpg)
Chalmers !8
Source: https://aws.amazon.com/lambda/
![Page 9: AWS Lambda and #serverless. · Source: loosely based on IBM’s OpenWhisk architecture. Chalmers !11 No state. Chalmers !12 No state Hard cap on max. execution time. Chalmers !13](https://reader030.fdocuments.net/reader030/viewer/2022041100/5ed79abd30ed446bab02c523/html5/thumbnails/9.jpg)
Chalmers !9
Source: https://github.com/aws-samples/lambda-refarch-streamprocessing
An Example: Real-Time Tweet Processing
![Page 10: AWS Lambda and #serverless. · Source: loosely based on IBM’s OpenWhisk architecture. Chalmers !11 No state. Chalmers !12 No state Hard cap on max. execution time. Chalmers !13](https://reader030.fdocuments.net/reader030/viewer/2022041100/5ed79abd30ed446bab02c523/html5/thumbnails/10.jpg)
Chalmers !10
Internally
Container Runtime
Events(e.g., client
requests, system events,
triggers…)
User/tenant datastore
Execution datastore
e e e…
Execution QueueResult data
Function Controller
Function datastore
Function source code
Function container
<fn>
Event Controller
…
Load balancer
Authentication
Rule engine
Authorization Function container
<fn>Function container
<fn>
Source: loosely based on IBM’s OpenWhisk architecture
![Page 11: AWS Lambda and #serverless. · Source: loosely based on IBM’s OpenWhisk architecture. Chalmers !11 No state. Chalmers !12 No state Hard cap on max. execution time. Chalmers !13](https://reader030.fdocuments.net/reader030/viewer/2022041100/5ed79abd30ed446bab02c523/html5/thumbnails/11.jpg)
Chalmers !11
No state
![Page 12: AWS Lambda and #serverless. · Source: loosely based on IBM’s OpenWhisk architecture. Chalmers !11 No state. Chalmers !12 No state Hard cap on max. execution time. Chalmers !13](https://reader030.fdocuments.net/reader030/viewer/2022041100/5ed79abd30ed446bab02c523/html5/thumbnails/12.jpg)
Chalmers !12
No state
Hard cap on max. execution time
![Page 13: AWS Lambda and #serverless. · Source: loosely based on IBM’s OpenWhisk architecture. Chalmers !11 No state. Chalmers !12 No state Hard cap on max. execution time. Chalmers !13](https://reader030.fdocuments.net/reader030/viewer/2022041100/5ed79abd30ed446bab02c523/html5/thumbnails/13.jpg)
Chalmers !13
No state
Hard cap on max. execution time
Extreme tail latency
![Page 14: AWS Lambda and #serverless. · Source: loosely based on IBM’s OpenWhisk architecture. Chalmers !11 No state. Chalmers !12 No state Hard cap on max. execution time. Chalmers !13](https://reader030.fdocuments.net/reader030/viewer/2022041100/5ed79abd30ed446bab02c523/html5/thumbnails/14.jpg)
Chalmers !14
![Page 15: AWS Lambda and #serverless. · Source: loosely based on IBM’s OpenWhisk architecture. Chalmers !11 No state. Chalmers !12 No state Hard cap on max. execution time. Chalmers !13](https://reader030.fdocuments.net/reader030/viewer/2022041100/5ed79abd30ed446bab02c523/html5/thumbnails/15.jpg)
Chalmers !15
Methodology
Interviews (n = 12)
Analysis of Grey Literature (n = 50)
Web Survey (n = 182)
![Page 16: AWS Lambda and #serverless. · Source: loosely based on IBM’s OpenWhisk architecture. Chalmers !11 No state. Chalmers !12 No state Hard cap on max. execution time. Chalmers !13](https://reader030.fdocuments.net/reader030/viewer/2022041100/5ed79abd30ed446bab02c523/html5/thumbnails/16.jpg)
Chalmers !16
Main Findings
Compositional Application Model
“Microservices on steroids”
![Page 17: AWS Lambda and #serverless. · Source: loosely based on IBM’s OpenWhisk architecture. Chalmers !11 No state. Chalmers !12 No state Hard cap on max. execution time. Chalmers !13](https://reader030.fdocuments.net/reader030/viewer/2022041100/5ed79abd30ed446bab02c523/html5/thumbnails/17.jpg)
Chalmers !17
Source: https://github.com/aws-samples/lambda-refarch-streamprocessing
Recall: Real-Time Tweet Processing
![Page 18: AWS Lambda and #serverless. · Source: loosely based on IBM’s OpenWhisk architecture. Chalmers !11 No state. Chalmers !12 No state Hard cap on max. execution time. Chalmers !13](https://reader030.fdocuments.net/reader030/viewer/2022041100/5ed79abd30ed446bab02c523/html5/thumbnails/18.jpg)
Chalmers !18
Compositional Application Model
![Page 19: AWS Lambda and #serverless. · Source: loosely based on IBM’s OpenWhisk architecture. Chalmers !11 No state. Chalmers !12 No state Hard cap on max. execution time. Chalmers !13](https://reader030.fdocuments.net/reader030/viewer/2022041100/5ed79abd30ed446bab02c523/html5/thumbnails/19.jpg)
Chalmers !19
Main Findings
Compositional Application Model
Use Cases
![Page 20: AWS Lambda and #serverless. · Source: loosely based on IBM’s OpenWhisk architecture. Chalmers !11 No state. Chalmers !12 No state Hard cap on max. execution time. Chalmers !13](https://reader030.fdocuments.net/reader030/viewer/2022041100/5ed79abd30ed446bab02c523/html5/thumbnails/20.jpg)
Chalmers !20
Main Findings
User-Facing
27 (2
9%)
Backend
29 (3
1%)
Both38 (40%)
But: many challenges in user-facing apps
![Page 21: AWS Lambda and #serverless. · Source: loosely based on IBM’s OpenWhisk architecture. Chalmers !11 No state. Chalmers !12 No state Hard cap on max. execution time. Chalmers !13](https://reader030.fdocuments.net/reader030/viewer/2022041100/5ed79abd30ed446bab02c523/html5/thumbnails/21.jpg)
Chalmers !21
Use Cases - Backend
![Page 22: AWS Lambda and #serverless. · Source: loosely based on IBM’s OpenWhisk architecture. Chalmers !11 No state. Chalmers !12 No state Hard cap on max. execution time. Chalmers !13](https://reader030.fdocuments.net/reader030/viewer/2022041100/5ed79abd30ed446bab02c523/html5/thumbnails/22.jpg)
Chalmers !22
Main Findings
Compositional Application Model
Use Cases Challenges
![Page 23: AWS Lambda and #serverless. · Source: loosely based on IBM’s OpenWhisk architecture. Chalmers !11 No state. Chalmers !12 No state Hard cap on max. execution time. Chalmers !13](https://reader030.fdocuments.net/reader030/viewer/2022041100/5ed79abd30ed446bab02c523/html5/thumbnails/23.jpg)
Chalmers !23
Challenges
![Page 24: AWS Lambda and #serverless. · Source: loosely based on IBM’s OpenWhisk architecture. Chalmers !11 No state. Chalmers !12 No state Hard cap on max. execution time. Chalmers !13](https://reader030.fdocuments.net/reader030/viewer/2022041100/5ed79abd30ed446bab02c523/html5/thumbnails/24.jpg)
Chalmers !24
The Future (as we see it)
“Faster horses” Different Servicesvs
(end user view) (provider view)
![Page 25: AWS Lambda and #serverless. · Source: loosely based on IBM’s OpenWhisk architecture. Chalmers !11 No state. Chalmers !12 No state Hard cap on max. execution time. Chalmers !13](https://reader030.fdocuments.net/reader030/viewer/2022041100/5ed79abd30ed446bab02c523/html5/thumbnails/25.jpg)
Chalmers !25
The Future (as we see it)
Different Services
“Function-as-a-Service as the assembly language of the cloud”
![Page 26: AWS Lambda and #serverless. · Source: loosely based on IBM’s OpenWhisk architecture. Chalmers !11 No state. Chalmers !12 No state Hard cap on max. execution time. Chalmers !13](https://reader030.fdocuments.net/reader030/viewer/2022041100/5ed79abd30ed446bab02c523/html5/thumbnails/26.jpg)
Chalmers !26
The Future (as we see it)
Different Services
“Function-as-a-Service as the assembly language of the cloud”
![Page 27: AWS Lambda and #serverless. · Source: loosely based on IBM’s OpenWhisk architecture. Chalmers !11 No state. Chalmers !12 No state Hard cap on max. execution time. Chalmers !13](https://reader030.fdocuments.net/reader030/viewer/2022041100/5ed79abd30ed446bab02c523/html5/thumbnails/27.jpg)
Chalmers !27
Learn More
https://peerj.com/preprints/27005/