Если вы хотите распространять сообщения среди потребителей, вам нужно использовать тот же group.id
. Если у вас есть 1000 сообщений и 1000 потребителей, то каждый из них обычно потребляет одно сообщение.
С другой стороны, если вы хотите, чтобы каждый потребитель принимал все сообщения из тем, вам нужно использовать другой group.id
, чтобы сообщения в теме использовались всеми потребителями. Если у вас огромное количество потребителей, вы можете использовать UUID.randomUUID().toString()
, чтобы получить отдельную group.id
для каждого.
Согласно документам :
Потребители маркируют себя именем группы потребителей и каждой записью
опубликовано в теме доставляется в один потребительский экземпляр в каждом
подписавшаяся группа потребителей. Потребительские экземпляры могут быть в отдельных
процессы или на отдельных машинах.
Если все экземпляры потребителей имеют одну и ту же группу потребителей, то
записи будут эффективно сбалансированы по нагрузке для пользовательских экземпляров.
Если все экземпляры потребителей имеют разные группы потребителей, то
каждая запись будет транслироваться всем процессам потребителя.