Перейти к основному содержимому

ADR-032. NATS JetStream как стартовая шина событий

Контекст

Экосистеме нужна durable at-least-once шина для событий доменов, outbox delivery, replay в пределах retention и consumer groups.

Решение

На старте используется NATS JetStream: один cluster на окружение, streams по доменам, durable consumers и DLQ. Замена на Kafka или другой broker допустима только через новый ADR.

Последствия

  • event contract не зависит от NATS subject naming;
  • каждый producer пишет outbox в своей БД;
  • consumer обязан вести processed_messages;
  • platform/events-bus.md является runtime контрактом.

Связи