Aleksander Slominski Paul Castro, Vatche Ishakian, Vinod ... · PDF fileMicroservices Mobile...
Transcript of Aleksander Slominski Paul Castro, Vatche Ishakian, Vinod ... · PDF fileMicroservices Mobile...
![Page 1: Aleksander Slominski Paul Castro, Vatche Ishakian, Vinod ... · PDF fileMicroservices Mobile Backends IoT Modest Stream Processing Bots, ML Inferencing Serverless is good for short-running](https://reader034.fdocuments.in/reader034/viewer/2022051320/5a723b437f8b9abb538d5d4f/html5/thumbnails/1.jpg)
Serverless Computing Function as a Service
Paul Castro, Vatche Ishakian, Vinod Muthusamy and Aleksander Slominski
![Page 2: Aleksander Slominski Paul Castro, Vatche Ishakian, Vinod ... · PDF fileMicroservices Mobile Backends IoT Modest Stream Processing Bots, ML Inferencing Serverless is good for short-running](https://reader034.fdocuments.in/reader034/viewer/2022051320/5a723b437f8b9abb538d5d4f/html5/thumbnails/2.jpg)
Outline
• Cloud Computing Evolution
• What is Serverless
• What makes Serverless attractive• Scalability• Management• Cost
• Type of applications for Serverless
• Current Platforms for Serverless• Lambda, Google Functions,
OpenWhisk, OpenLambda, Functionless from Kubernetes
• Serverless Architecture (OpenWhisk)
• From what is publically available
• Programming Model• Triggers, actions, rules, chains
• Research Challenges and Questions
• Hands-on exercises (second part)
![Page 3: Aleksander Slominski Paul Castro, Vatche Ishakian, Vinod ... · PDF fileMicroservices Mobile Backends IoT Modest Stream Processing Bots, ML Inferencing Serverless is good for short-running](https://reader034.fdocuments.in/reader034/viewer/2022051320/5a723b437f8b9abb538d5d4f/html5/thumbnails/3.jpg)
![Page 4: Aleksander Slominski Paul Castro, Vatche Ishakian, Vinod ... · PDF fileMicroservices Mobile Backends IoT Modest Stream Processing Bots, ML Inferencing Serverless is good for short-running](https://reader034.fdocuments.in/reader034/viewer/2022051320/5a723b437f8b9abb538d5d4f/html5/thumbnails/4.jpg)
Bare Metal
PaaS Container Orchestrators
IaaS
Evolution Of Serverless
![Page 5: Aleksander Slominski Paul Castro, Vatche Ishakian, Vinod ... · PDF fileMicroservices Mobile Backends IoT Modest Stream Processing Bots, ML Inferencing Serverless is good for short-running](https://reader034.fdocuments.in/reader034/viewer/2022051320/5a723b437f8b9abb538d5d4f/html5/thumbnails/5.jpg)
Monolithic Application
Break-down into microservices
Make each micro service HA
Protect against regional outages
Region A Region B
Explosion in number ofcontainers / processes:
Increase of infrastructure cost footprint
Increase of operationalmanagement cost andcomplexity
![Page 6: Aleksander Slominski Paul Castro, Vatche Ishakian, Vinod ... · PDF fileMicroservices Mobile Backends IoT Modest Stream Processing Bots, ML Inferencing Serverless is good for short-running](https://reader034.fdocuments.in/reader034/viewer/2022051320/5a723b437f8b9abb538d5d4f/html5/thumbnails/6.jpg)
Bare Metal
PaaS Container Orchestrators
IaaS
Enter Serverless
Serverless
![Page 7: Aleksander Slominski Paul Castro, Vatche Ishakian, Vinod ... · PDF fileMicroservices Mobile Backends IoT Modest Stream Processing Bots, ML Inferencing Serverless is good for short-running](https://reader034.fdocuments.in/reader034/viewer/2022051320/5a723b437f8b9abb538d5d4f/html5/thumbnails/7.jpg)
a cloud-native platform
for
short-running, stateless computation
and
event-driven applications
which
scales up and down instantly and automatically
and
charges for actual usage at a millisecond granularity
What is Serverless?
![Page 8: Aleksander Slominski Paul Castro, Vatche Ishakian, Vinod ... · PDF fileMicroservices Mobile Backends IoT Modest Stream Processing Bots, ML Inferencing Serverless is good for short-running](https://reader034.fdocuments.in/reader034/viewer/2022051320/5a723b437f8b9abb538d5d4f/html5/thumbnails/8.jpg)
Runs code only on-demand on a per-request basis
Serverless deployment & operations model No servers Just code
Server-less means no servers?Or worry-less about servers?
![Page 9: Aleksander Slominski Paul Castro, Vatche Ishakian, Vinod ... · PDF fileMicroservices Mobile Backends IoT Modest Stream Processing Bots, ML Inferencing Serverless is good for short-running](https://reader034.fdocuments.in/reader034/viewer/2022051320/5a723b437f8b9abb538d5d4f/html5/thumbnails/9.jpg)
Runs code in response to events
Event-programming model
What triggers code execution?
![Page 10: Aleksander Slominski Paul Castro, Vatche Ishakian, Vinod ... · PDF fileMicroservices Mobile Backends IoT Modest Stream Processing Bots, ML Inferencing Serverless is good for short-running](https://reader034.fdocuments.in/reader034/viewer/2022051320/5a723b437f8b9abb538d5d4f/html5/thumbnails/10.jpg)
FaaS market is growing quickly
Source: FaaS Market - Global Forecast to 2021 - study by MarketsAndMarkets (http://www.marketsandmarkets.com/)
![Page 11: Aleksander Slominski Paul Castro, Vatche Ishakian, Vinod ... · PDF fileMicroservices Mobile Backends IoT Modest Stream Processing Bots, ML Inferencing Serverless is good for short-running](https://reader034.fdocuments.in/reader034/viewer/2022051320/5a723b437f8b9abb538d5d4f/html5/thumbnails/11.jpg)
FaaS market is growing quickly
Source: FaaS Market - Global Forecast to 2021 - study by MarketsAndMarkets (http://www.marketsandmarkets.com/)
![Page 12: Aleksander Slominski Paul Castro, Vatche Ishakian, Vinod ... · PDF fileMicroservices Mobile Backends IoT Modest Stream Processing Bots, ML Inferencing Serverless is good for short-running](https://reader034.fdocuments.in/reader034/viewer/2022051320/5a723b437f8b9abb538d5d4f/html5/thumbnails/12.jpg)
Google Search Trend over time
![Page 13: Aleksander Slominski Paul Castro, Vatche Ishakian, Vinod ... · PDF fileMicroservices Mobile Backends IoT Modest Stream Processing Bots, ML Inferencing Serverless is good for short-running](https://reader034.fdocuments.in/reader034/viewer/2022051320/5a723b437f8b9abb538d5d4f/html5/thumbnails/13.jpg)
Why is Serverless attractive?
• Making app development & ops dramatically faster, cheaper, easier
• Drives infrastructure cost savings
Source: Jason McGee, IBM; Serverless Conference 2017.
![Page 14: Aleksander Slominski Paul Castro, Vatche Ishakian, Vinod ... · PDF fileMicroservices Mobile Backends IoT Modest Stream Processing Bots, ML Inferencing Serverless is good for short-running](https://reader034.fdocuments.in/reader034/viewer/2022051320/5a723b437f8b9abb538d5d4f/html5/thumbnails/14.jpg)
Key factors for infrastructure cost savings
![Page 15: Aleksander Slominski Paul Castro, Vatche Ishakian, Vinod ... · PDF fileMicroservices Mobile Backends IoT Modest Stream Processing Bots, ML Inferencing Serverless is good for short-running](https://reader034.fdocuments.in/reader034/viewer/2022051320/5a723b437f8b9abb538d5d4f/html5/thumbnails/15.jpg)
Data processing
http://ecc.ibm.com/case-study/us-en/ECCF-CDC12387USEN
10x faster90% less
cost
![Page 16: Aleksander Slominski Paul Castro, Vatche Ishakian, Vinod ... · PDF fileMicroservices Mobile Backends IoT Modest Stream Processing Bots, ML Inferencing Serverless is good for short-running](https://reader034.fdocuments.in/reader034/viewer/2022051320/5a723b437f8b9abb538d5d4f/html5/thumbnails/16.jpg)
Microservices
Mobile Backends
IoT
Modest Stream Processing
Bots, ML Inferencing
Serverless is good forshort-runningstatelessevent-driven
Serverless is not good forlong-runningstatefulnumber crunching
Databases
Deep Learning Training
Spark/Hadoop Analytics
Heavy-Duty Stream Analytics
Numerical Simulationf(x)
What is Serverless good for?
Service integration Video Streaming
![Page 17: Aleksander Slominski Paul Castro, Vatche Ishakian, Vinod ... · PDF fileMicroservices Mobile Backends IoT Modest Stream Processing Bots, ML Inferencing Serverless is good for short-running](https://reader034.fdocuments.in/reader034/viewer/2022051320/5a723b437f8b9abb538d5d4f/html5/thumbnails/17.jpg)
Current Platforms for Serverless
Azure Functions
AWS Lambda
Kubernetes
Google Functions
Red-Hat
![Page 18: Aleksander Slominski Paul Castro, Vatche Ishakian, Vinod ... · PDF fileMicroservices Mobile Backends IoT Modest Stream Processing Bots, ML Inferencing Serverless is good for short-running](https://reader034.fdocuments.in/reader034/viewer/2022051320/5a723b437f8b9abb538d5d4f/html5/thumbnails/18.jpg)
Apache OpenWhisk Serverless Architecture
![Page 19: Aleksander Slominski Paul Castro, Vatche Ishakian, Vinod ... · PDF fileMicroservices Mobile Backends IoT Modest Stream Processing Bots, ML Inferencing Serverless is good for short-running](https://reader034.fdocuments.in/reader034/viewer/2022051320/5a723b437f8b9abb538d5d4f/html5/thumbnails/19.jpg)
Apache OpenWhisk: High-level serverless programming model
![Page 20: Aleksander Slominski Paul Castro, Vatche Ishakian, Vinod ... · PDF fileMicroservices Mobile Backends IoT Modest Stream Processing Bots, ML Inferencing Serverless is good for short-running](https://reader034.fdocuments.in/reader034/viewer/2022051320/5a723b437f8b9abb538d5d4f/html5/thumbnails/20.jpg)
Trigger
Rule
Action
Package
language support toencapsulate, share, extend code
first-class event-drivenprogrammingconstructs
first-class functionscompose via sequences
dockercontainers asactions
all constructs first-class— powerful extensible language
![Page 21: Aleksander Slominski Paul Castro, Vatche Ishakian, Vinod ... · PDF fileMicroservices Mobile Backends IoT Modest Stream Processing Bots, ML Inferencing Serverless is good for short-running](https://reader034.fdocuments.in/reader034/viewer/2022051320/5a723b437f8b9abb538d5d4f/html5/thumbnails/21.jpg)
A Action: a stateless function (event handler)
![Page 22: Aleksander Slominski Paul Castro, Vatche Ishakian, Vinod ... · PDF fileMicroservices Mobile Backends IoT Modest Stream Processing Bots, ML Inferencing Serverless is good for short-running](https://reader034.fdocuments.in/reader034/viewer/2022051320/5a723b437f8b9abb538d5d4f/html5/thumbnails/22.jpg)
Action: javascriptA
function main(params) { console.log(“Hello “ + params.name); return { msg: “Goodbye “ + params.name) };}
![Page 23: Aleksander Slominski Paul Castro, Vatche Ishakian, Vinod ... · PDF fileMicroservices Mobile Backends IoT Modest Stream Processing Bots, ML Inferencing Serverless is good for short-running](https://reader034.fdocuments.in/reader034/viewer/2022051320/5a723b437f8b9abb538d5d4f/html5/thumbnails/23.jpg)
Action: PythonA
def lambda_handler(event, context): print("hello world")
![Page 24: Aleksander Slominski Paul Castro, Vatche Ishakian, Vinod ... · PDF fileMicroservices Mobile Backends IoT Modest Stream Processing Bots, ML Inferencing Serverless is good for short-running](https://reader034.fdocuments.in/reader034/viewer/2022051320/5a723b437f8b9abb538d5d4f/html5/thumbnails/24.jpg)
Action: SwiftA
func main(params:[String:Any]) -> [String:Any] {var reply = [String:Any] ()if let name = params[“name”] as? String {
print(“Hello \(name)”)reply[“msg”] = “Goodbye \(name)”
}return reply
}
![Page 25: Aleksander Slominski Paul Castro, Vatche Ishakian, Vinod ... · PDF fileMicroservices Mobile Backends IoT Modest Stream Processing Bots, ML Inferencing Serverless is good for short-running](https://reader034.fdocuments.in/reader034/viewer/2022051320/5a723b437f8b9abb538d5d4f/html5/thumbnails/25.jpg)
Action: sequenceA
![Page 26: Aleksander Slominski Paul Castro, Vatche Ishakian, Vinod ... · PDF fileMicroservices Mobile Backends IoT Modest Stream Processing Bots, ML Inferencing Serverless is good for short-running](https://reader034.fdocuments.in/reader034/viewer/2022051320/5a723b437f8b9abb538d5d4f/html5/thumbnails/26.jpg)
Trigger: a class of events (feed)
![Page 27: Aleksander Slominski Paul Castro, Vatche Ishakian, Vinod ... · PDF fileMicroservices Mobile Backends IoT Modest Stream Processing Bots, ML Inferencing Serverless is good for short-running](https://reader034.fdocuments.in/reader034/viewer/2022051320/5a723b437f8b9abb538d5d4f/html5/thumbnails/27.jpg)
AWS Lambda Trigger Sources
Source: Deep Dive into AWS Lambda, Vyom Nagrani , Manager Product Management, AWS Lambda, AWS Online Tech Talks, January 2017.
![Page 28: Aleksander Slominski Paul Castro, Vatche Ishakian, Vinod ... · PDF fileMicroservices Mobile Backends IoT Modest Stream Processing Bots, ML Inferencing Serverless is good for short-running](https://reader034.fdocuments.in/reader034/viewer/2022051320/5a723b437f8b9abb538d5d4f/html5/thumbnails/28.jpg)
T Aevent event handler
R Rule: a mapping from a Trigger to an Action
Rule
![Page 29: Aleksander Slominski Paul Castro, Vatche Ishakian, Vinod ... · PDF fileMicroservices Mobile Backends IoT Modest Stream Processing Bots, ML Inferencing Serverless is good for short-running](https://reader034.fdocuments.in/reader034/viewer/2022051320/5a723b437f8b9abb538d5d4f/html5/thumbnails/29.jpg)
Apache OpenWhisk: Step 1. Entering the system
EdgeVMEdge
VM
Edge VM
EdgeVMEdgeVM
Master VM
controller
Why
POST /api/v1/namespaces/myNamespace/actions/myAction
? • SSL termination• Load Balancing• Blue/Green continuous delivery
![Page 30: Aleksander Slominski Paul Castro, Vatche Ishakian, Vinod ... · PDF fileMicroservices Mobile Backends IoT Modest Stream Processing Bots, ML Inferencing Serverless is good for short-running](https://reader034.fdocuments.in/reader034/viewer/2022051320/5a723b437f8b9abb538d5d4f/html5/thumbnails/30.jpg)
Master VM
controller
Apache OpenWhisk: Step 2. Handle the request
![Page 31: Aleksander Slominski Paul Castro, Vatche Ishakian, Vinod ... · PDF fileMicroservices Mobile Backends IoT Modest Stream Processing Bots, ML Inferencing Serverless is good for short-running](https://reader034.fdocuments.in/reader034/viewer/2022051320/5a723b437f8b9abb538d5d4f/html5/thumbnails/31.jpg)
Master VM
kafka SDK
couchDBSDK
sprayDSL
loadbalancer
consulSDK
data modelsauthcaching
Apache OpenWhisk: Step 2. Handle the request
actors
controller
![Page 32: Aleksander Slominski Paul Castro, Vatche Ishakian, Vinod ... · PDF fileMicroservices Mobile Backends IoT Modest Stream Processing Bots, ML Inferencing Serverless is good for short-running](https://reader034.fdocuments.in/reader034/viewer/2022051320/5a723b437f8b9abb538d5d4f/html5/thumbnails/32.jpg)
Apache OpenWhisk: Step 3. Authentication + Authorization
scala
kafka SDK
couchDBSDK
sprayDSL
loadbalancer
consulSDK
data models
authcaching
externalauth
• Cloudant: hosted CouchDB• plug-in structure for custom
authentication module
actors
controller
Authorization: Basic QWxhZGRpbjpPcGVuU2VzYW1l
![Page 33: Aleksander Slominski Paul Castro, Vatche Ishakian, Vinod ... · PDF fileMicroservices Mobile Backends IoT Modest Stream Processing Bots, ML Inferencing Serverless is good for short-running](https://reader034.fdocuments.in/reader034/viewer/2022051320/5a723b437f8b9abb538d5d4f/html5/thumbnails/33.jpg)
Apache OpenWhisk: Step 4. Get the action
scala
kafka SDK
couchDBSDK
sprayDSL
loadbalancer
consulSDK
data models
authcaching
• check resource limits• actions stored as documents in CouchDB
• binaries as objects (attachments)
actors
controller
![Page 34: Aleksander Slominski Paul Castro, Vatche Ishakian, Vinod ... · PDF fileMicroservices Mobile Backends IoT Modest Stream Processing Bots, ML Inferencing Serverless is good for short-running](https://reader034.fdocuments.in/reader034/viewer/2022051320/5a723b437f8b9abb538d5d4f/html5/thumbnails/34.jpg)
Apache OpenWhisk: Step 5. Looking for a home
scala
kafka SDK
couchDBSDK
sprayDSL
loadbalancer
consulSDK
data models
authcaching
controller
Load balancer: find a slave to executeSlave health, load stored in consul
• Sequentially consistent KV store• Replication, Fault Tolerance• Health Check / Monitoring utilities
Why ?
actors
![Page 35: Aleksander Slominski Paul Castro, Vatche Ishakian, Vinod ... · PDF fileMicroservices Mobile Backends IoT Modest Stream Processing Bots, ML Inferencing Serverless is good for short-running](https://reader034.fdocuments.in/reader034/viewer/2022051320/5a723b437f8b9abb538d5d4f/html5/thumbnails/35.jpg)
Apache OpenWhisk: Step 6. Get in line!
scala
kafka SDK
couchDBSDK
sprayDSL
loadbalancer
consulSDK
data models
authcaching
invoker
Why ? • High throughput fault-tolerant queues• Point-to-point messages via topics
• explicit load balancing
Post request to execute to queue in
actors
Master VM
Master VM Slave VM
controller
![Page 36: Aleksander Slominski Paul Castro, Vatche Ishakian, Vinod ... · PDF fileMicroservices Mobile Backends IoT Modest Stream Processing Bots, ML Inferencing Serverless is good for short-running](https://reader034.fdocuments.in/reader034/viewer/2022051320/5a723b437f8b9abb538d5d4f/html5/thumbnails/36.jpg)
Slave VM
invoker
Apache OpenWhisk: Step7. Get to Work!
![Page 37: Aleksander Slominski Paul Castro, Vatche Ishakian, Vinod ... · PDF fileMicroservices Mobile Backends IoT Modest Stream Processing Bots, ML Inferencing Serverless is good for short-running](https://reader034.fdocuments.in/reader034/viewer/2022051320/5a723b437f8b9abb538d5d4f/html5/thumbnails/37.jpg)
Slave VM
Apache OpenWhisk: Step 7. Get to work!
scala
kafka SDK
couchDBSDK
dockerutilities
containerpool
consulSDK
data models
caching
invoker
bound to user action
• each user action gets it own container (isolation)• containers may be reused• container pool allocates and garbage collects containers
stem cell
actors
User action containers
![Page 38: Aleksander Slominski Paul Castro, Vatche Ishakian, Vinod ... · PDF fileMicroservices Mobile Backends IoT Modest Stream Processing Bots, ML Inferencing Serverless is good for short-running](https://reader034.fdocuments.in/reader034/viewer/2022051320/5a723b437f8b9abb538d5d4f/html5/thumbnails/38.jpg)
invoker
containerpool
cold start stem cell container
Dockerrun
HTTPPOST /init
HTTPPOST /runwarm
container
![Page 39: Aleksander Slominski Paul Castro, Vatche Ishakian, Vinod ... · PDF fileMicroservices Mobile Backends IoT Modest Stream Processing Bots, ML Inferencing Serverless is good for short-running](https://reader034.fdocuments.in/reader034/viewer/2022051320/5a723b437f8b9abb538d5d4f/html5/thumbnails/39.jpg)
Apache OpenWhisk: Step 8. Store the results.
scala
kafka SDK
couchDBSDK
dockerutilities
containerpool
consulSDK
data models
caching
invoker
action container
HTTPResponse
logs on filesystem
actors
![Page 40: Aleksander Slominski Paul Castro, Vatche Ishakian, Vinod ... · PDF fileMicroservices Mobile Backends IoT Modest Stream Processing Bots, ML Inferencing Serverless is good for short-running](https://reader034.fdocuments.in/reader034/viewer/2022051320/5a723b437f8b9abb538d5d4f/html5/thumbnails/40.jpg)
Additional architectural concerns for Serverless for service providers
• Cold start problem• Keep invokers ready (“stem cell”) or running (“warm”) after invocation• Tradeoff with latency and resource reservation
• Auto scale• Add to and remove from the invoker pool• Hibernate when idle
• Fine-grained billing • Overhead of metering• Choice of which resources to bill (CPU, memory, network, …)• Understandable billing policy (simple vs detailed)?
![Page 41: Aleksander Slominski Paul Castro, Vatche Ishakian, Vinod ... · PDF fileMicroservices Mobile Backends IoT Modest Stream Processing Bots, ML Inferencing Serverless is good for short-running](https://reader034.fdocuments.in/reader034/viewer/2022051320/5a723b437f8b9abb538d5d4f/html5/thumbnails/41.jpg)
Related work
• Reactive programming• Event-based applications• Stream processing systems• Dataflow programming• Workflows and business processes• Service composition• Service oriented architectures• many more ...
![Page 42: Aleksander Slominski Paul Castro, Vatche Ishakian, Vinod ... · PDF fileMicroservices Mobile Backends IoT Modest Stream Processing Bots, ML Inferencing Serverless is good for short-running](https://reader034.fdocuments.in/reader034/viewer/2022051320/5a723b437f8b9abb538d5d4f/html5/thumbnails/42.jpg)
Future of Serverless:Research Challenges and Questions
![Page 43: Aleksander Slominski Paul Castro, Vatche Ishakian, Vinod ... · PDF fileMicroservices Mobile Backends IoT Modest Stream Processing Bots, ML Inferencing Serverless is good for short-running](https://reader034.fdocuments.in/reader034/viewer/2022051320/5a723b437f8b9abb538d5d4f/html5/thumbnails/43.jpg)
Serverless as next step in Cloud Computing?
• Cost - pay-as-you-go is enough?• Server-less - can servers be really hidden?• Problem of state: stateless, state in other place, or state-ful
supported in FaaS?• Security - no servers!• Legacy systems and serverless?
• Hybrid model?
![Page 44: Aleksander Slominski Paul Castro, Vatche Ishakian, Vinod ... · PDF fileMicroservices Mobile Backends IoT Modest Stream Processing Bots, ML Inferencing Serverless is good for short-running](https://reader034.fdocuments.in/reader034/viewer/2022051320/5a723b437f8b9abb538d5d4f/html5/thumbnails/44.jpg)
Cloud computing: server-less vs server-aware?
![Page 45: Aleksander Slominski Paul Castro, Vatche Ishakian, Vinod ... · PDF fileMicroservices Mobile Backends IoT Modest Stream Processing Bots, ML Inferencing Serverless is good for short-running](https://reader034.fdocuments.in/reader034/viewer/2022051320/5a723b437f8b9abb538d5d4f/html5/thumbnails/45.jpg)
Programming model(s) for Serverless?
• Tools• Deployment• Monitoring and debugging
• Short-lived functions, scaling to large invocations, • Looking for problems is like finding needles in ever growing haystack?
• Serverless IDEs?• Decompose micro-service into FaaS?
• Code granularity is function?• Managing state inside and outside FaaS• Concurrency, recovery semantics, transactions?
![Page 46: Aleksander Slominski Paul Castro, Vatche Ishakian, Vinod ... · PDF fileMicroservices Mobile Backends IoT Modest Stream Processing Bots, ML Inferencing Serverless is good for short-running](https://reader034.fdocuments.in/reader034/viewer/2022051320/5a723b437f8b9abb538d5d4f/html5/thumbnails/46.jpg)
Open Problems - how FaaS fits into cloud?
• Just another *aaS?• Can different cloud computing service models be mixed? • Can there be more choices for how much memory and CPU can be
used by serverless functions? • Does serverless need to have IaaS-like based pricing? • What about spot and dynamic pricing with dynamically changing
granularity?
![Page 47: Aleksander Slominski Paul Castro, Vatche Ishakian, Vinod ... · PDF fileMicroservices Mobile Backends IoT Modest Stream Processing Bots, ML Inferencing Serverless is good for short-running](https://reader034.fdocuments.in/reader034/viewer/2022051320/5a723b437f8b9abb538d5d4f/html5/thumbnails/47.jpg)
Open Problems: new tooling needed?
• Granularity of serverless is much smaller than traditional server based tool
• Debugging is much different if instead of having one artifact (a micro-service or traditional monolithic app) developers need to deal with a myriad of smaller pieces of code …
• That haystack can grow really big really fast ...
![Page 48: Aleksander Slominski Paul Castro, Vatche Ishakian, Vinod ... · PDF fileMicroservices Mobile Backends IoT Modest Stream Processing Bots, ML Inferencing Serverless is good for short-running](https://reader034.fdocuments.in/reader034/viewer/2022051320/5a723b437f8b9abb538d5d4f/html5/thumbnails/48.jpg)
Open Problems: can “legacy” code be made to run serverless?
• Today the amount of existing (“legacy”) code that must continue running is much larger than the new code created specifically to run in serverless environments
• The economical value of existing code represents a huge investment of countless hours of developers coding and fixing software
• Therefore, one of the most important problems may be to what degree existing legacy code can be automatically or semi-automatically decomposed into smaller-granularity pieces to take advantage of these new economics?
![Page 49: Aleksander Slominski Paul Castro, Vatche Ishakian, Vinod ... · PDF fileMicroservices Mobile Backends IoT Modest Stream Processing Bots, ML Inferencing Serverless is good for short-running](https://reader034.fdocuments.in/reader034/viewer/2022051320/5a723b437f8b9abb538d5d4f/html5/thumbnails/49.jpg)
Open Problems: is serverless fundamentally stateless?
• Is serverless fundamentally stateless?• Current serverless platforms are stateless will there be stateful
serverless services in future?• Will there be simple ways to deal with state? • Can there be serverless services that have stateful support built-in
• And with different degrees of quality-of-service?
![Page 50: Aleksander Slominski Paul Castro, Vatche Ishakian, Vinod ... · PDF fileMicroservices Mobile Backends IoT Modest Stream Processing Bots, ML Inferencing Serverless is good for short-running](https://reader034.fdocuments.in/reader034/viewer/2022051320/5a723b437f8b9abb538d5d4f/html5/thumbnails/50.jpg)
Open Problems: patterns for building serverless solutions?
• Combine low granularity basic building blocks of serverless (functions, actions, triggers, packages, ...) into bigger solutions?
• How to decompose apps into functions so that they user resources optimally?
• Are there lessons learned that can be applied from OOP design patterns, Enterprise Integration Patterns, etc.?
![Page 51: Aleksander Slominski Paul Castro, Vatche Ishakian, Vinod ... · PDF fileMicroservices Mobile Backends IoT Modest Stream Processing Bots, ML Inferencing Serverless is good for short-running](https://reader034.fdocuments.in/reader034/viewer/2022051320/5a723b437f8b9abb538d5d4f/html5/thumbnails/51.jpg)
Open Problems: serverless beyond traditional cloud of servers?
• IF functions is running outside of data-center is it serverless?• Cost, scalability, ...
• Internet of Things (IoT) will have many small devices each capable of running small amount of code - like functions in serverless?
• New domains, new concerns? • For example for IoT energy usage may be more important than speed?
• Are Blockchain smart contracts server-less?• For example when Ethereum users are running smart contracts they get
paid for the “gas” consumed by the code, similar to fuel cost for an automobile but applied to computing (no need for data-center!)
![Page 52: Aleksander Slominski Paul Castro, Vatche Ishakian, Vinod ... · PDF fileMicroservices Mobile Backends IoT Modest Stream Processing Bots, ML Inferencing Serverless is good for short-running](https://reader034.fdocuments.in/reader034/viewer/2022051320/5a723b437f8b9abb538d5d4f/html5/thumbnails/52.jpg)
Beyond tutorial
• Workshop afternoon with papers and panel discussion
• Slack channel for research discussions?
• And more in our chapter in upcoming book "Research Advances in Cloud Computing”
• https://www.springer.com/us/book/9789811050251#aboutBook
![Page 53: Aleksander Slominski Paul Castro, Vatche Ishakian, Vinod ... · PDF fileMicroservices Mobile Backends IoT Modest Stream Processing Bots, ML Inferencing Serverless is good for short-running](https://reader034.fdocuments.in/reader034/viewer/2022051320/5a723b437f8b9abb538d5d4f/html5/thumbnails/53.jpg)
Backup
![Page 54: Aleksander Slominski Paul Castro, Vatche Ishakian, Vinod ... · PDF fileMicroservices Mobile Backends IoT Modest Stream Processing Bots, ML Inferencing Serverless is good for short-running](https://reader034.fdocuments.in/reader034/viewer/2022051320/5a723b437f8b9abb538d5d4f/html5/thumbnails/54.jpg)
AWS Lambda Use Case
![Page 55: Aleksander Slominski Paul Castro, Vatche Ishakian, Vinod ... · PDF fileMicroservices Mobile Backends IoT Modest Stream Processing Bots, ML Inferencing Serverless is good for short-running](https://reader034.fdocuments.in/reader034/viewer/2022051320/5a723b437f8b9abb538d5d4f/html5/thumbnails/55.jpg)
Serverless Architecture (Apache OpenWhisk)