This presentation was recorded at YOW! 2022. #GOTOcon #YOW https://yowcon.com Vagif Abilov - Senior Consultant at Miles with 30+ Years of Programming Experience @ljobject RESOURCES https://twitter.com/ooobject https://github.com/object https://linkedin.com/in/vagif-abilov-0192b51 ABSTRACT 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. [...] TIMECODES 00:00 Intro 04:44 How to provide message handling guarantee? 08:53 Can we run a reliable system with at-most-once message delivery? 11:20 Don't pay for the ferryman version 1 17:44 Don't pay for the ferryman version 2 19:54 Don't pay for the ferryman version 3 22:53 Don't pay for the ferryman version 4 28:34 Important assumption: Idempotency 30:31 But actors are reactive 33:23 Main lesson 33:53 Rant about workflow engines & saga managers 36:52 Conclusion 37:47 Outro Download slides and read the full abstract here: https://yowlondon.com/2022/sessions/2298 RECOMMENDED BOOKS Richard Warburton • Object-Oriented vs. Functional Programming • https://amzn.to/3xkWQ0F Russ Olsen • Getting Clojure • https://amzn.to/3J8zI8s Russ Olsen • Eloquent Ruby • https://amzn.to/37gOhcG Richard Feldman • Elm in Action • https://amzn.to/387kujI Neal Ford • Functional Thinking • https://amzn.to/3DdP35B Venkat Subramaniam • Functional Programming in Java • https://amzn.to/2WlOXIt Ulisses Almeida • Learn Functional Programming with Elixir • https://amzn.to/389grn6 Eric Normand • Grokking Simplicity • https://amzn.to/3gz7o3C https://twitter.com/GOTOcon https://www.linkedin.com/company/goto- https://www.facebook.com/GOTOConferences #ActorModel #Messaging #ReliableMessaging #VagifAbilov #ActorModelFramework #Fsharp #AkkadotNET #Idempotency Looking for a unique learning experience? Attend the next GOTO conference near you! Get your ticket at https://gotopia.tech Sign up for updates and specials at https://gotopia.tech/newsletter SUBSCRIBE TO OUR CHANNEL - new videos posted almost daily. https://www.youtube.com/user/GotoConferences/?sub_confirmation=1
Get notified about new features and conference additions.