Когда потребитель регистрируется, разрывает соединение или регистрируется и выполняет другие действия в сети, клиент выполняет балансировку нагрузки. После балансировки нагрузки отношения прослушивания очереди могут измениться: одна очередь может перейти от потребления ConsumerA к потреблению ConsumerB. В этом процессе из-за времени действия ACK и кратковременного повторного прослушивания возникает проблема дублирования сообщений. Некоторые приложения очень чувствительны к дублированию сообщений, поэтому необходимо контролировать потребление сообщений и уменьшать количество повторяющихся сообщений.
Идея использования функции таблицы контроля заключается в следующем: брокер записывает, какой потребитель потребляет каждую очередь. Брокер проверяет каждый запрос на получение сообщения, проверяя клиента, который запрашивает сообщение, и очередь, которую он хочет получить, чтобы убедиться, что они соответствуют записям в таблице контроля. Если они совпадают, то сообщение разрешается получить. Если нет, то запрос отклоняется.
Брокер использует таблицу контроля для ограничения количества клиентов, которые могут одновременно получать сообщения из одной очереди (кроме широковещательных очередей), чтобы избежать повторного прослушивания, вызывающего повторное потребление.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )