The times when we developed big monolith systems have passed.
Nowadays, systems are often separated into multiple distributed services. This brings us a lot of advantages but also some new challenges. One of the problems we need to solve is communication - how do these services talk to each other? How does one service inform others about changes in its state? How does one service ask another to perform some work for it?
I will show you one approach to answering these questions in this talk, Messaging in Distributed Systems. The presentation will be focused more on general principles rather than a concrete technology.