A producer sends a message to an exchange. The exchange routes it by rules into one or more queues. A consumer reads from the queue. If the consumer is unavailable, the message waits in the queue.
Kafka stores messages in topics split into partitions. Messages are not deleted after reading — they can be replayed. Ideal for event streaming and audit logs.
HTTP is a synchronous request-response. A broker is async delivery with guarantees. Use a broker when: the sender must not wait, the consumer can be temporarily unavailable, or a single message must reach multiple consumers.