Gold sponsor
Technical sponsor
Digital sponsor
Community
Xmas Serverless Transformation,
when the elf doesn’t scale!
Massimo Bonanni
Paranormal Developer, with the head in the Cloud and all the REST in microservices!
#xmasdev18
#xmasdev18
Santa Claus….we have a problem!
The number of children in the world who
believe in Santa Claus is increasing
With the approach of Christmas the letters
of the children increase dramatically
The letters are handled one by one by elves
who can not do everything
#xmasdev18
Does Santa Claus have any solutions?
He has already hired on all the elves of the world
He can not hire other elves…
The elven union is inflexible and doesn't allow it
He cannot expect the elves to work more
than they should…
Because the factory is already in a lost place ☺
He cannot relocate the business in a
remote place…
#xmasdev18
The solution is…… Santa Claud Platform!!!
#xmasdev18
Requirements
The Santa Claus company is a no-profit and cannot waste
money by spending it on services that it doesn’tuse
The number of letters received increases only in certain
periods of the year (October, November and December)
while in the rest of the year the number is less
The amount of incoming letters is not predictable and can
vary rapidly.
Santa Claus cannot lose even a letter .... the children
would not forgive him
Unfortunately....the platform must work!!
#xmasdev18
#xmasdev18
Pay-per-use
Instant, event-driven scalability
Full abstraction of servers
What is serverless?
#xmasdev18
Full integrationwith Azure ecosystem
Functions is the center piece of the Serverless platform
#xmasdev18
What are Azure Functions?
Author functions in C#,
F#, Node.JS, Java, and
more
React to timers, HTTP,
or events from your
favorite Azure services,
with more on the way
Send results to an
ever-growing
collection of services
#xmasdev18
Updated runtime built on .NET Core 2.1
.NET Functions loading changes
New extensibility model.
•Decoupled from language providers and bindings
Run code from a package
Tooling updates: CLI, Visual Studio & VS Code
Durable Functions (GA)
Improvements to DevOps integration
What’s new in 2.0?
#xmasdev18
How much do they cost?
Consumption Plan
• Pay only when your
functions are running.
• Scale out automatically,
even during periods of
high load.
• Function execution times
out after a configurable
period of time
App Sevice Plan
• You won't pay more than
the cost of the VM
instance that you
allocate.
• You can manually scale
out by adding more VM
instances, or you can
enable autoscale.
• Supports Linux hosting.
• You must enable
AlwaysOn.
#xmasdev18
What are Durable Functions?
Durable Functions is an advanced feature of Azure Functions.
They provide the ability to write long running orchestrations using a single
function while still being able to maintain a global state.
#xmasdev18
What are Durable Functions?
Run inside the Azure Function Runtime
Are built on top of the Durable Task Framework
Maintain their execution state using a design pattern
known as Event Sourcing
Written in C# (Functions v1 and v2), F# and JavaScript
(Functions v2 only) – No JSON, No Designer!!!
Use Azure Storage queues, tables, and blobs to persist
execution history state and trigger function execution
#xmasdev18
Is the triggered
functions that will
create new
instances of an
orchestration.
It is the entry point
for creating an
instance of a
durable
orchestration
Is the heart of a
durable function.
Orchestrator
functions describe
the way and order
actions are
executed
Is the basic unit of
work in a durable
orchestration.
An activity
function must be
triggered by
an activity trigger
Types of functions
Client Orchestrator Activity
#xmasdev18
#xmasdev18
The solution
#xmasdev18
Santa Claud Platform
The letter is
scanned and sent
to a Durable
Function
The function
"interprets" the letter
using cognitive
algorithms
#xmasdev18
Santa Claud Platform
The letters can be
entered by the data
entry elves through
a POST call
Recovers the behavior
of the child during the
year
If the child was bad,
an email is sent to the
support elves
The support elf
decides whether the
child deserves the gift
or not
If the child still deserves the
gift, a record is added to
the table of the gifts to
order
If the child does not
deserve the gift, a record is
added to the table of
rejected gifts
#xmasdev18
Santa Claud Platform The "spy" elf reports
good and bad
children with an app
and a REST API
Every night a report is
created with the gifts to
be ordered the next day
Santa Claud Platform
#xmasdev18
DOMANDE E RISPOSTE
Massimo Bonanni
massimo.bonanni@microsoft.com
@massimobonanni
github.com/massimobonanni/XmasServerlessTrasformation
#xmasdev18
Gold sponsor Technical sponsor
Digital sponsor
Community
Design by Carmine Alfano
www.carminealfano.it

Xmas Serverless Transformation: when the elf doesn’t scale!

  • 1.
    Gold sponsor Technical sponsor Digitalsponsor Community Xmas Serverless Transformation, when the elf doesn’t scale! Massimo Bonanni Paranormal Developer, with the head in the Cloud and all the REST in microservices!
  • 2.
  • 3.
    #xmasdev18 Santa Claus….we havea problem! The number of children in the world who believe in Santa Claus is increasing With the approach of Christmas the letters of the children increase dramatically The letters are handled one by one by elves who can not do everything
  • 4.
    #xmasdev18 Does Santa Claushave any solutions? He has already hired on all the elves of the world He can not hire other elves… The elven union is inflexible and doesn't allow it He cannot expect the elves to work more than they should… Because the factory is already in a lost place ☺ He cannot relocate the business in a remote place…
  • 5.
    #xmasdev18 The solution is……Santa Claud Platform!!!
  • 6.
    #xmasdev18 Requirements The Santa Clauscompany is a no-profit and cannot waste money by spending it on services that it doesn’tuse The number of letters received increases only in certain periods of the year (October, November and December) while in the rest of the year the number is less The amount of incoming letters is not predictable and can vary rapidly. Santa Claus cannot lose even a letter .... the children would not forgive him Unfortunately....the platform must work!!
  • 7.
  • 8.
    #xmasdev18 Pay-per-use Instant, event-driven scalability Fullabstraction of servers What is serverless?
  • 9.
    #xmasdev18 Full integrationwith Azureecosystem Functions is the center piece of the Serverless platform
  • 10.
    #xmasdev18 What are AzureFunctions? Author functions in C#, F#, Node.JS, Java, and more React to timers, HTTP, or events from your favorite Azure services, with more on the way Send results to an ever-growing collection of services
  • 11.
    #xmasdev18 Updated runtime builton .NET Core 2.1 .NET Functions loading changes New extensibility model. •Decoupled from language providers and bindings Run code from a package Tooling updates: CLI, Visual Studio & VS Code Durable Functions (GA) Improvements to DevOps integration What’s new in 2.0?
  • 12.
    #xmasdev18 How much dothey cost? Consumption Plan • Pay only when your functions are running. • Scale out automatically, even during periods of high load. • Function execution times out after a configurable period of time App Sevice Plan • You won't pay more than the cost of the VM instance that you allocate. • You can manually scale out by adding more VM instances, or you can enable autoscale. • Supports Linux hosting. • You must enable AlwaysOn.
  • 13.
    #xmasdev18 What are DurableFunctions? Durable Functions is an advanced feature of Azure Functions. They provide the ability to write long running orchestrations using a single function while still being able to maintain a global state.
  • 14.
    #xmasdev18 What are DurableFunctions? Run inside the Azure Function Runtime Are built on top of the Durable Task Framework Maintain their execution state using a design pattern known as Event Sourcing Written in C# (Functions v1 and v2), F# and JavaScript (Functions v2 only) – No JSON, No Designer!!! Use Azure Storage queues, tables, and blobs to persist execution history state and trigger function execution
  • 15.
    #xmasdev18 Is the triggered functionsthat will create new instances of an orchestration. It is the entry point for creating an instance of a durable orchestration Is the heart of a durable function. Orchestrator functions describe the way and order actions are executed Is the basic unit of work in a durable orchestration. An activity function must be triggered by an activity trigger Types of functions Client Orchestrator Activity
  • 16.
  • 17.
  • 18.
    #xmasdev18 Santa Claud Platform Theletter is scanned and sent to a Durable Function The function "interprets" the letter using cognitive algorithms
  • 19.
    #xmasdev18 Santa Claud Platform Theletters can be entered by the data entry elves through a POST call Recovers the behavior of the child during the year If the child was bad, an email is sent to the support elves The support elf decides whether the child deserves the gift or not If the child still deserves the gift, a record is added to the table of the gifts to order If the child does not deserve the gift, a record is added to the table of rejected gifts
  • 20.
    #xmasdev18 Santa Claud PlatformThe "spy" elf reports good and bad children with an app and a REST API Every night a report is created with the gifts to be ordered the next day
  • 21.
  • 22.
  • 23.
    DOMANDE E RISPOSTE MassimoBonanni [email protected] @massimobonanni github.com/massimobonanni/XmasServerlessTrasformation
  • 24.
    #xmasdev18 Gold sponsor Technicalsponsor Digital sponsor Community Design by Carmine Alfano www.carminealfano.it