One of the limitations of Azure Functions is that they cannot call each other: you cannot call an Azure Function from inside another Azure Function. Every time you need to communicate between two different Azure Functions, you need to use an external service (for example, a storage queue or blob storage). In real-world scenarios, you need to orchestrate calls between Azure Functions, and one of the ways is to use Durable Functions.
In this chapter, we will look at Durable Functions and how you can use them to create complex orchestrations between Azure Functions.
The chapter will cover the following topics:
- What are Durable Functions?
- The kinds of problems they solve and the kinds of patterns they can implement
- The types of function in the Durable Functions framework and how Durable Functions manage the state
- How to manage Durable Functions versioning
- How to design and implement an order manager solution with Durable Functions