235 вопросов по RabbitMQ с технических собеседований
235 вопросов1634 компании353 технологии
Что проверяют на интервью
Как устроена подборка
На странице собраны вопросы по RabbitMQ — от проверки базовых принципов до практического применения и архитектурных решений. В подборке чаще встречаются темы: rabbitmq, backend, kafka.
Обоснуйте выбор требованиями: хранение истории событий, повторное чтение, независимые потребители, нагрузка и существующая инфраструктура. Не сводите решение к тезису «Kafka всегда быстрее».
Укажите, какой брокер реально использовали, какие сообщения проходили и что делали лично. Отправка события, администрирование брокера и потоковая агрегация — разные виды опыта.
Объясните отсутствие очереди требованиями проекта. При небольшой нагрузке и необходимости немедленного результата синхронный обмен может быть проще и достаточен.
Назовите версию, с которой действительно работали, и уточните, если не помните minor release. Версию клиента не нужно путать с версией RabbitMQ-сервера.
Сравните не только технологии, но и свои реальные задачи: какие события или задания передавали, как обеспечивали повторную обработку, порядок и наблюдаемость. Чётко отделите практический опыт от теории.
FastAPI принимает задания, Celery выполняет сверку, RabbitMQ доставляет задачи. Полный отказ от ручного аудита нельзя объявлять без подтверждённых требований и измерений качества конкретного проекта.
Kafka прежде всего предоставляет партиционированный журнал с хранением событий и offsets читателей. RabbitMQ часто служит брокером очередей с exchanges, маршрутизацией и подтверждением отдельных сообщений.
Consumer обычной очереди RabbitMQ подтверждает отдельные доставки через ack; consumer Kafka читает записи партиций и управляет offsets. Отсюда различаются повторное чтение, распределение работы и хранение истории.
Сообщение помещают в очередь задержки без consumers, задают message TTL и DLX на рабочий exchange. После истечения TTL оно направляется в рабочую очередь, где его получает обработчик.
RabbitMQ чаще используют для очередей задач и гибкой маршрутизации сообщений, Kafka — для долговечного партиционированного журнала событий с независимым чтением и повторным проигрыванием.
Сообщение можно потерять до подтверждения публикации, при недолговечной очереди/сообщении, раннем ack или политике удаления. Защита требует publisher confirms, корректных acknowledgements и выбранной модели хранения.
Kafka делает акцент на сохранённом журнале событий, партициях и offsets, RabbitMQ — на маршрутизации и доставке через очереди. Это различие модели, а не правило «один быстрый, другой надёжный».