Inder is correct. To elaborate: Each message is delivered to one consumer in each consumer group. Traditional pub/sub delivers each message to each consumer. Traditional queuing delivers each message to exactly one consumer. This model generalizes both of those and anything in between--if you assign all consumers the same consumer group it acts like a queue, if you assign them all different consumer groups it acts like pub/sub.
In my experience you rarely want either traditional queues or traditional pub/sub in internet-style systems. Each consumer usually MUST load balance the consumption over multiple machines for throughput and failover but you often do have multiple of these consuming clusters. This is what we are attempting to capture. Let me know if you think we could explain this better, we have really struggled to make this clear to people I think. -Jay On Fri, Nov 11, 2011 at 6:30 PM, Mark <static.void....@gmail.com> wrote: > How do consumer groups work? Say I have 3 consumers each reading from > topic1 how do you ensue each consumer is not consuming a message that has > been consumed by another consumer? >