Session: Tackling Common Concerns with Azure Function Patterns
In recent months I've been interested in looking into how "serverless" patterns, via Azure Functions, can be used to provide solutions to various common requirements we come across in building web and mobile solutions for our clients. Features such scheduled tasks, messaging, workflows and background processing that we can implement in a reliable, familiar and much more cost effective way when compared to using dedicated server resources.
As well as briefly going over an introduction of what Azure Functions are, why they are of interest and methods for development and deployment, we'll look in detail at implementing a number of cloud patterns using these technologies.
These will include timer-based operations, background jobs, queue based messaging and managing longer-running tasks using chaining and fan-in/fan-out approaches. For each pattern, we'll discuss where it is appropriate for use, look at component diagrams, see demonstration and examine the implementation.
We'll also look at "durable functions" - a new approach currently in preview - that allows us to implement some of the patterns in a simpler way, with greater abstraction from the underlying storage components.
In closing we'll discuss some issues and "gotchas" I've run into in real-world implementations of these patterns - on what is still a new and evolving platform - and consider how we can handle them.
Slides: download slides as a PDF
Github repositories with code/demos from the session:
Timeslot: Wednesday 13:30 - 14:30
Track: Azure Track #2