* Queue: Message is published once and consumed once. * Pub Sub: Message published once, consumed many times. * Kafka Asked: How can we do both ? Consumer Group * Kafka designed their system to server both purposes from the start. * RabbitMQ started as a Message Queue System, but later added support for pub/sub. As a result, the system became awkward.