Що робить message broker (Kafka, RabbitMQ)?
Message broker (брокер повідомлень) - це компонент, який передає повідомлення між сервісами у розподіленій системі, роблячи їхню взаємодію асинхронною і надійною.
Основна ідея
Сервіси не викликають одне одного напряму, а обмінюються повідомленнями через брокера:
- один сервіс публікує подію («Оплату здійснено»),
- інший підписується на такі події і реагує («Створити запис про доставку»).
Це усуває жорсткі залежності між сервісами.
Що робить брокер повідомлень
- Приймає і зберігає повідомлення працює як буфер між видавцями і споживачами.
- Доставляє повідомлення гарантує доставку навіть за тимчасових збоїв отримувача.
- Маршрутизує потоки надсилає повідомлення в потрібну чергу чи тему.
- Підтримує масштабування розподіляє навантаження між кількома підписниками.
- Забезпечує надійність і порядок зберігає підтвердження, повторно надсилає втрачені повідомлення, зберігає порядок подій.
Приклади брокерів повідомлень
- RabbitMQ - класичний брокер черг (протокол AMQP), чудово підходить для бізнес-подій і задач обробки.
- Apache Kafka - високопродуктивна стрімінгова платформа для потоків даних і журналів подій.
Підсумок:
Message broker - це «поштар» між мікросервісами: він приймає, зберігає і доставляє повідомлення, забезпечуючи асинхронність, стійкість і слабку зв'язаність між частинами системи.
Коротка відповідь
Для співбесідиPremium
Коротка відповідь допоможе вам впевнено відповідати на цю тему під час співбесіди.