Сохранность сообщений (message persistence) и долговечность (durability)

Узлы в распределённых системах выполняют вычисления, хранят данные и отправляют сообщения друг другу. Ключевой характеристикой отправки сообщений является то, насколько надёжно эти сообщения прибудут.

Сохранность сообщения означает, что когда на узле, обрабатывающем сообщение, происходит отказ, то сообщение по прежнему будет доступно для обработки после того, как проблема разрешится.

В случае распределенных систем, обмен сообщениями (messaging) обычно выполняется при помощи некоторого распределенного сервиса сообщений (брокер сообщений) — RabbitMQ, Kafka или других.

Долговечность сообщений обычно используется на уровне очереди сообщений. При помощи долговечной очереди сообщений, если очередь (или узел) уходят в оффлайн когда сообщение отослано, оно попрежнему получит сообщение когда оно вернётся в онлайн.