• 30% idle on average
• 30b $ wasted
• Amazon:
• ~ 7,3 % CPU load
physical
virtualization
infrastructure as a service
PaaS / Containers
serverless
•1: destroy servers
•2: …
•3: Profit??
Backend
as a
service
Function
as a
service
client
Application server
authentication
Database operations
Upload files
Auth provider
db provider
storage provider
Why reinvent
the wheel
Managed by
third party
Less
complexity
Cost
Backend
as a
service
Function
as a
service
Azure functions AWS lamda Google cloud functions
Host (process)
FaaS platformApplication process
operation
operation
operation
FaaS platform
operation
operation
operation
An event occurs
operation
CLIENT
HANDLE CLICK
FUNCTION DB
Click
CLIENT
HANDLE CLICK
FUNCTION DB
Click
HANDLE CLICK
FUNCTION
HANDLE CLICK
FUNCTION
HANDLE CLICK
FUNCTION
HANDLE CLICK
FUNCTION
HANDLE CLICK
FUNCTION
Specialized Event triggered Lasts a short time
Instant scale Pay per use Fully managed
Less to
manage
Scaling is
automatic
Cost model
Paas
• You decide when to scale
• and how
• CPU > 85% - instance++
Faas
• Scaling is managed for you
• When needed
Never pay for
idle
Pay per use
• 9 million cost
• +1 years dev
• Crashed on first day
In 2 days Total cost
< 500$
It scaled
2 students recreated it…
invocations Memory exec time
X ( X
€ 0.169
Per million executions
)
€ 0.000014
per
GB-s
3 million x 512mb x 1 s exec time = 14,85 €
3 million x 128mb x 1 s exec time = 0,37 €
1s
Execution time
100%
Cost
1s
Execution time
100%
Cost
200ms 20%
Reduce
By
80%
Optimization and writing good code suddenly becomes a driving business case
Phone
generate thumbnails
Save images On new image
Storage account
Every week
Fetch orders for this week
exec Mail sales
search
order
Auth
Search
Books
API gateway
GET: /api/book
POST: /api/book/order
Storage
search
db
Order
Book
Send
mail
order
db
Get
details
book
db
Please demo gods, let the demo work
• Create a new function app
• Open live metrics app insights
Productivity Rapid time to market Scale instantly pay-per-use
BUT
It does not solve
ALL
Your problems
dotnet
Cloud
Azure
architect
Competence
lead
gertjan.vanthienen@ordina.be
Come and talk to me
Have a potato…

uNite 2017 - Going serverless - Gertjan Vanthienen