Продюсер отправляет сообщение в exchange. Exchange по правилам маршрутизирует его в одну или несколько queue. Консюмер читает из очереди. Если консюмер недоступен — сообщение ждёт в очереди.
Kafka хранит сообщения в topics, разбитых на partitions. Сообщения не удаляются после чтения — их можно перечитать. Идеален для event streaming и аудит-логов.
HTTP — синхронный запрос-ответ. Брокер — асинхронная доставка с гарантиями. Брокер нужен, когда: отправитель не должен ждать, консюмер может быть временно недоступен, или одно сообщение должны получить несколько консюмеров.