Встречается на собеседованиях • сегодня

В чем разница между kafka и RabbitMQ

Kafka и RabbitMQ — это брокеры сообщений, но с разными подходами:

RabbitMQ:

  • Использует модель очередей и обменников (exchanges).
  • Подходит для точечной доставки сообщений (например, задачи в фоне).
  • Гарантирует доставку (ACK) и поддерживает транзакции.
  • Меньше масштабируется горизонтально.

Kafka:

  • Работает как распределенный лог-ориентированный брокер.
  • Сообщения хранятся топиками (topics) и партициями.
  • Оптимизирован для потоковой обработки больших объемов данных.
  • Высокая пропускная способность и отказоустойчивость.

Пример подписки в Kafka:

javascript
const { Kafka } = require('kafkajs');
const kafka = new Kafka({ brokers: ['localhost:9092'] });
const consumer = kafka.consumer({ groupId: 'test-group' });
await consumer.subscribe({ topic: 'test-topic' });
await consumer.run({ eachMessage: async ({ message }) => console.log(message.value.toString()) });

Выбор зависит от задачи: RabbitMQ для надежных транзакций, Kafka — для потоков данных.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы