For a mission-critical system such as payment processing for a bank, you need complete assurance that the system is fault-tolerant and can gracefully handle periods of unavailability, network SNAFUs, and other associated software fun and games.
This presentation makes a powerful case for a combination of two Akka concepts - clustering and distributed data - to demonstrate how you can persist state across the cluster and therefore not need to worry about individual nodes going down for maintenance, or indeed for unforeseen reasons. We also deal with the fact that we might need to only be able to run one instance of an actor in a cluster, by introducing the concept of a cluster singleton.
We then go on to write a simple TFTP server in Akka, which runs in an Akka cluster and uses Akka Distributed Data to distribute client data. So any member of the cluster that receives a request for data is able to handle it independently.
There are a blog post and a GitHub repo that goes with this presentation which outlines most of the technical content: https://iconsolutions.com/blog/reactive-systems-lets-write-tftp-server-with-akka
SHARE THIS TALK
Icon Solutions, Senior Consultant
Patrick is a consultant for Icon Solutions, a financial services consultancy, working with some of the world's leading financial services organisations.
Recently he's been working on IPF - Icon's flagship real-time payments processing platform. IPF is built using reactive concepts and leading open-source frameworks, including Akka.