THE SERVERLESS CLOUD BART BLOMMAERTS @DAGGIEBE
THE SERVERLESS CLOUD
NO MORE SERVERS ?
▸ Obviously not
▸ Existence of servers is hidden
▸ Applications need to run on something
▸ But …
THE SERVERLESS CLOUD
NO MORE WORRIES ?
▸ Well ..
▸ Less server management
▸ No worries about security updates, scalability, availability, …
THE SERVERLESS CLOUD
NO MORE OPS ?
▸ Well …
▸ Specialised, outsourced team
▸ Still need:
▸ Monitoring, deployment, security, networking, debugging support, memory management, scaling, configuration, …
▸ Opportunity for tooling!
THE SERVERLESS CLOUD
EVENT-DRIVEN
▸ Can be triggered by many different event types
▸ Depends on cloud provider
THE SERVERLESS CLOUD
PAY PER EXECUTION
▸ No running servers
▸ Only consume server time, when executed
▸ Only pay when executed
▸ Small operational cost
THE SERVERLESS CLOUD
PAY PER EXECUTION - EXAMPLE (AWS)
REPORT RequestId: da9f321f-c5ff-4a6f-a84b-e469cbca197d Duration: 0.61 ms Billed Duration: 100 ms Memory Size: 128 MB Max Memory Used: 16 MB
THE SERVERLESS CLOUD
SEAMLESS SCALING
▸ No risk of under- or over provisioning
▸ Short-lived “compute containers”
▸ Isolated from other functions
▸ Resources provided from function configuration
▸ Containers can be reused, but do not depend on it. It’s the suppliers prerogative to create a new one
THE SERVERLESS CLOUD
STATELESS
▸ No state is stored between invocations
▸ To preserve state, use
▸ a database
▸ the file system
▸ cross-application cache
▸ …
THE SERVERLESS CLOUD
YOUR IDEA
▸ Use someone else's data
▸ Combine data
▸ Use data differently
▸ Creativity adds value
THE SERVERLESS CLOUD
THE SERVERLESS FRAMEWORK
▸ CLI
▸ Scaffolding
▸ Best practices (grouping of functions)
▸ Lifecycle support (create, deploy, invoke, …)
▸ Soon to be supplier independent
▸ https://serverless.com
THE SERVERLESS CLOUD
COLLABORATIVE ECONOMY
▸ Code
▸ https://github.com/bart-blommaerts/serverless-demo
▸ IoT
▸ https://github.com/ordina-jworks/lora-iot-demo
THE SERVERLESS CLOUD
SUPPLIER CHOICE
▸ Integration
▸ Offering
▸ Tooling
▸ Build and deploy
▸ Monitoring
▸ Execution time is limited
▸ SLA?
THE SERVERLESS CLOUD
CODE
▸ Initialize services outside of function
▸ eg. database connection
▸ Limit your function size
▸ Use an external editor