Reliable Messaging in the World of Actors
You need to be signed in to add a collection
Actor model frameworks use at-most-once delivery as a default rule for their message transport, and they do it for good reasons. Efficient reliable messaging requires business-level acknowledgement, and this it not something that the actor model framework is built for. So how do we build a reliable actor based system? I will share the lessons from our journey through the world of actors where we revised an approach to a message delivery guarantee mutiple times. Our system is written in F# and uses Akka.NET, but this talk is language and platform agnostic, discussing common patterns and possible obstacles when choosing between various methods to achieve reliable messaging in a system run by actors.
Transcript
Actor model frameworks use at-most-once delivery as a default rule for their message transport, and they do it for good reasons. Efficient reliable messaging requires business-level acknowledgement, and this it not something that the actor model framework is built for. So how do we build a reliable actor based system? I will share the lessons from our journey through the world of actors where we revised an approach to a message delivery guarantee mutiple times. Our system is written in F# and uses Akka.NET, but this talk is language and platform agnostic, discussing common patterns and possible obstacles when choosing between various methods to achieve reliable messaging in a system run by actors.