Встречается на 4% собеседований по Java

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

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

RabbitMQ — классический брокер, работающий по модели publish-subscribe и point-to-point.

  • Подходит для сложных маршрутизаций (exchange, routing keys).
  • Гарантирует доставку (ACK, транзакции).
  • Медленнее при высокой нагрузке.

Kafka — распределённый лог-ориентированный брокер.

  • Оптимизирован для потоковой обработки больших данных.
  • Хранит сообщения долго (по топикам и партициям).
  • Высокая пропускная способность, но сложнее в настройке.

Пример Kafka Producer:

java
Properties props = new Properties();
props.put("bootstrap.servers", "localhost:9092");
props.put("key.serializer", "org.apache.kafka.common.serialization.StringSerializer");
props.put("value.serializer", "org.apache.kafka.common.serialization.StringSerializer");

Producer<String, String> producer = new KafkaProducer<>(props);
producer.send(new ProducerRecord<>("my_topic", "key", "value"));
producer.close();

Выбор зависит от задачи: RabbitMQ для гарантированной доставки, Kafka для потоков и масштабирования.

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

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

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

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