Каковы условия, в которых JMSXDeliveryCount увеличен в WebSphere MQ. Мне нужны все сценарии, в которых это может произойти.Когда JMSXDeliveryCount увеличивается
ответ
Большое спасибо другим, я получил форму в форме ответа и вставлял ее здесь, чтобы она была полезной для других.
Обстоятельство, при которых сообщение может быть повторно доставлено потребителю в зависимости от режима БЛАГОДАРНОСТИ сеанса:
Номера для транзакционных сеансов, выбрать режим подтверждения AUTO_ACKNOWLEDGE или DUPS_OK_ACKNOWLEDGE есть сообщения повторно доставлено потребитель, когда приложение Метод onMessage() генерирует исключение. Время выполнения клиента вызывает исключение, а затем снова вызывает функциюMessage(). Исключения улавливаются и сообщаются в ExceptionListener Connection. Установка предела для попыток повторной доставки ограничивает счет повторной доставки. См. Примечание ниже.
Непринятые сеансы, которые выбирают режим подтверждения SINGLE_MESSAGE_ACKNOWLEDGE или CLIENT_ACKNOWLEDGE, сообщения переадресовываются, когда приложение вызывает Session.recover().
С режимом подтверждения TRANSACTED сообщения переадресовываются, когда приложение откатывает транзакцию.
Приложение может попасть в петлю, где он неоднократно получает сообщение, которое вызывает приложение к сбою, а затем то же самое сообщение повторно доставлена снова и снова. Неограниченный цикл повторной доставки иногда называют сценарием «ядовитых сообщений».
- точка-точка (очередь) на основе клиентов-потребителей, которые хотят, чтобы ограничить попытки Redelivery может ограничить количество поставок сообщения потребителя, указав параметр на ConnectionFactory. , Это делается с помощью progress.message.jclient.ConnectionFactory.setMaxDeliveryCount (значение java.lang.Integer). Значение 0 (по умолчанию) не указывает предела.
Сообщения, которые превысили лимит доставки и не были подтверждены, будут обрабатываться согласно свойствам, указанным в сообщении, или будут отброшены.
Если свойство сообщения JMS_SonicMQ_preserveUndelivered установлено значением истинно, то сообщение будет помещено в очереди SonicMQ.DeadMessage (или альтернативное назначение, указанное в свойстве JMS_SonicMQ_destinationUndelivered), а JMS_SonicMQ_undeliveredReasonCode сообщения свойства будет установлено в прогресс кода ошибки .message.jclient.Constants.UNDELIVERED_DELIVERY_LIMIT_EXCEEDED. Если свойство 'preserveUndelivered' не установлено, сообщение будет отброшено.
- Кроме того, приложения JMS (например, Pub-Sub клиентов тематических и Sonic ESB Services/процессы) могут выполнять обнаружение самостоятельно, получая и действует на значении свойства JMSXDeliveryCount на каждом сообщении. Свойство JMSXDeliveryCount использует int для указания количества попыток доставки для сообщения. Получает его значение с помощью метода javax.jms.Message.getIntProperty ("JMSXDeliveryCount"). Значение этого свойства увеличивается каждый раз, когда сообщение предоставляется потребителю. Счетчики доставки поддерживаются в среде выполнения клиента для сообщений, ожидающих доставки к потребительскому объекту. Если потребитель закрыт/завершен и перезаписан/перезапущен, счетчик для каждого сообщения, отправленного потребителю, сбрасывается на 0.
JMSXDeliveryCount увеличивается каждый раз, когда сообщение повторно отправляется потребителю. Сообщение можно было бы добавить:
1) Пользователь, использующий режим подтверждения клиента, получил сообщение ранее, не вызвал подтверждение этого сообщения().
2) Потребитель получил сообщение в транзакции, не вызвал фиксацию или не вызвал откат.
EDIT:
Если Клиент JMS не может обработать сообщение из-за некоторые плохие заголовки JMS, то такое сообщение (известное как яд сообщения) не будет доставлен к применению и JMS клиенту будет внутренне откат это сообщение. В этом случае также увеличивается JMSXDeliveryCount.
В IBM MQ заданы ли параметры очереди возврата и возврата для очереди, из которой извлекаются сообщения? JMS Client будет помещать такие плохие сообщения в очередь резервного копирования, как только будет достигнут порог возврата. Это делается для того, чтобы избежать повторного получения сообщения JMS клиентом снова и снова, тем самым блокируя доставку других хороших сообщений в приложение.
- 1. SQLServerException, когда нагрузка увеличивается
- 2. Когда int ++ увеличивается?
- 3. Счетчик увеличивается каждый раз, когда таймер перезапускается
- 4. Число понравившихся увеличивается, когда страница обновляется
- 5. Сбросить значение Row_Number(), когда значение Dense_Rank() увеличивается
- 6. Когда я нажимаю кнопку, страница увеличивается
- 7. Когда переменная с постфиксным оператором фактически увеличивается?
- 8. Содержимое увеличивается, когда отображается в iFrame?
- 9. Div Height Увеличивается, когда окно браузера завершено.
- 10. как получить аннулирует, когда число увеличивается
- 11. переполнение? когда размер контейнера увеличивается, элементы выталкиваются
- 12. Размер шрифта текста увеличивается, когда линия обтекает
- 13. Использование процессора увеличивается, когда ошибка обрыва трубы
- 14. подвида увеличивается, когда панель инструментов исчезают
- 15. Вызов случайного SKAction, когда мой счет увеличивается?
- 16. Когда я рисую на изображении, изображение увеличивается
- 17. Размер PriorityQueue увеличивается, когда несопоставимо объекты добавляются
- 18. OrientDB медленнее, когда число запросов увеличивается
- 19. Как увеличивается размер кучи, когда активность убита
- 20. Счетчик, похоже, не увеличивается, когда когда-либо изменяются изменения edittext
- 21. Установлена ли в IBM MQ V6.0 свойство JMSXDeliveryCount?
- 22. Могу ли я получить JMSXDeliveryCount и JMSDestination с использованием org.springframework.messaging.Message
- 23. Mysql «использование памяти» увеличивается и увеличивается
- 24. Высота основного контейнера div не увеличивается динамически, когда содержимое внутри div увеличивается
- 25. UITextview contentSize увеличивается автоматически?
- 26. Как увеличивается количество стеков?
- 27. Большой запрос увеличивается TempDB
- 28. Байт Bluetooth txt увеличивается?
- 29. Почему размер класса увеличивается, когда int64_t изменяется на int32_t
- 30. Почему моя переменная не увеличивается, когда я добавляю к ней
Можете ли вы помочь мне в дальнейшем в этом случае в случае плохого сообщения, или это единственные сценарии, в которых это может произойти, так как ситуация, с которой я столкнулся, заключается в том, что ее получение увеличивается, и я не могу проследить причину этого, поскольку транзакция прошла успешно. Будет здорово, если вы сможете помочь мне в дальнейшем ... :) – AjayLohani