Datastores for Asynchronous Communication
Explore how datastores like message queues and event logs enable asynchronous communication in distributed systems. Understand FIFO semantics, at-least-once and exactly-once delivery guarantees, and how systems manage message processing and failures.
We'll cover the following...
In the previous lesson we learned that to achieve asynchronous communication, we need to store requests in datastores, and these datastores belong to two main categories: message queues and event logs.
Message Queues
Some commonly used message queues are ActiveMQ, RabbitMQ, and Amazon SQS.
A message queue usually operates with first-in, first-out (FIFO) semantics. This means that messages, in general, are added to the tail of the queue and removed from the head.
Note: Multiple producers can send messages to the queue, and multiple consumers can receive messages and process them ...