Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Azure Durable Functions

Daron Yondem
December 19, 2017

Azure Durable Functions

This is part of a full day Serverless training I hosted for Microsoft Turkey in Istanbul talking about Azure Durable Functions.

Daron Yondem

December 19, 2017
Tweet

More Decks by Daron Yondem

Other Decks in Programming

Transcript

  1. Azure Durable Functions
    Daron Yöndem
    http://daron.me
    @daronyondem

    View Slide

  2. Durable!
    • Stateful functions
    • Managed state, checkpoints, and restarts when needed.
    • Define stateful workflows in orchestrator functions.
    .

    View Slide

  3. Workflows you said?
    • Define workflows in code. No JSON schemas or designers are
    needed.
    • They can call other functions synchronously and asynchronously.
    Output from called functions can be saved to local variables.
    • They automatically checkpoint their progress whenever the
    function awaits. Local state is never lost if the process recycles.

    View Slide

  4. Problem 1 : Function Chaining
    • No visualization to show relationship between functions and queues.
    • Middle queues are an implementation detail – conceptual overhead.
    • Error handling adds a lot more complexity.

    View Slide

  5. Function chaining
    DEMO

    View Slide

  6. Problem 2 : Fan-out/Fan-in
    • Fanning-out is easy, but fanning-in is more complicated.
    • Functions offers no help with this scenario today
    • All the same problems of the previous pattern

    View Slide

  7. Fan-Out
    DEMO

    View Slide

  8. Problem 3 : Eternal Processes
    • Long running processes
    • Built-in state management
    • orchestrationClient or built-in webhooks can be used.

    View Slide

  9. Problem 4 : Stateful Singletons
    • Actor like scenarios.
    • Long-running (possibly endless), stateful, reliable, single-
    threaded, location-transparent, and globally addressable.

    View Slide

  10. Stateful Singletons
    DEMO

    View Slide

  11. Problem 5 : Human Interaction
    • Durable timers to wait for external events.
    • orchestrationClient binding can be used to use built-in
    bindings.

    View Slide

  12. Durable Timers
    DEMO

    View Slide

  13. Links worth sharing
    Durable Task Framework
    • https://goo.gl/q4yjUc
    Durable Functions Nuget Package
    • https://goo.gl/p1ma8T

    View Slide

  14. Thanks
    http://daron.me | @daronyondem
    Download slides here;
    http://daron.me/decks

    View Slide