A Reactive Process Manager in C# with Akka.NET
A while back I was looking for an example of a Process Manager written in C# with a decent commentary on what they’re all about. Unfortunately, I couldn’t find what I was looking for.
I did, however, know that Gregor Hohpe and Bobby Woolf’s discussion of Process Managers in the book “Enterprise Integration Patterns” (p 322) was a good starting point.
Searching further, I found that Vaughn Vernon detailed a version of this code in Scala for his book “Reactive Messaging Patterns with the Actor Model” (p 292), and spoke about it in conference talk: “Building a Reactive Process Manager, Twice.”
From there, I decided to write a version of this Process Manager in C# using Akka.NET. Here’s the code: github.com/heynickc/akka_process_manager
Hopefully this helps if you ever find yourself looking for an Actor-based Process Manager with some supplemental discussion to get you on your way.
Make sure you sign up for my newsletter by clicking the big red button below so you always get my latest software architecture content, delivered straight to your inbox!