serai/message-queue
Luke Parker b0c28a1cf0
Move message_queue over to deduplication via intents
Due to each service having multiple distinct clocks, we can't expect a stable
ordering except the ordering an intact message-queue provides. The messages
emitted should be consistent however, solely with unknown order, which is why
we can craft intents based on their contents (already implemented by
processor-messages).
2023-07-16 20:34:35 -04:00
..
src Move message_queue over to deduplication via intents 2023-07-16 20:34:35 -04:00
Cargo.toml Move message_queue over to deduplication via intents 2023-07-16 20:34:35 -04:00
LICENSE Add a message queue 2023-07-01 08:53:46 -04:00
README.md Add a message queue 2023-07-01 08:53:46 -04:00

Message Log

A message log for various services to communicate over.

Each message is checked to be of the claimed origin. Then, it's added to the recipient's message queue. This queue is sequentially handled, FIFO, only dropping messages once the recipient acknowledges it's been handled.

A client which publishes an event specifies its own ID for the publication. If multiple publications with the same ID occur, they are assumed repeats and dropped.

This library always panics as its error-cases should be unreachable, given its intranet status.