Durable Functions v2.0 (alpha preview) also has support for Durable Entities and being able to use alternative Storage Providers (such as Redis) to keep track of entity and orchestration state in scenarios where applications may be running in a disconnected or edge environment.
Durable Entities is based on the Actor pattern and is similar to Orleans Virtual Actors. This new stateful pattern basically lets an entity modify its own state directly and can only request the state of another entity to change by sending messages to the target entity. The communication between entities is one-way only which helps to avoid deadlocking. All of this works very nicely in the concurrent environments such as gaming, IoT, finance apps, etc.
Matt Henderson presented a quick but super informative session THR3011 where he demonstrated Durable Functions patterns such as Chaining, Fan-out/Fan-in, Monitoring, External event Interaction, and finally the new Entity Aggregation pattern using Durable Entities.
Since Microsoft Build 2019 finished a few weeks ago, Chris Gillum from Microsoft posted another article explaining more about what Durable Entities are and which scenarios we can use them in. Right now Durable Entities are used inside Entity Functions where the entity’s state is loaded, modified and saved. Chris points out that in a future release they may allow us to write Durable Entities as classes by sprinkling some syntactic sugar to the class or methods.
I give Durable Functions v2.0 (alpha preview) 💎💎💎💎 out of 5 gems!