IBM MQ automatic client reconnection to multi-instance queue manager – Part2

Продолжение поста IBM MQ automatic client reconnection to multi-instance queue manager.

Рекомендации при разработке компонент, взаимодействующих с MQ:

1. Целесообразно вынести создание подключения (ConnectionFactory) в отдельную функцию с анализом ее вызова (catch exception). В случае ошибок (MQRC_*, например 2009 (MQRC_CONNECTION_BROKEN)  или 2059 (MQRC_Q_MGR_NOT_AVAILABLE)), организовать логику повтора подключения по алгоритму:

  • Первые пять попыток подключения производятся с интервалом в 5 секунд;
  • Все последующие попытки производятся с интервалом в 30 секунд;

2. В случае получения ошибок при выполнении операций MQPUT/MQGET, необходимо предусмотреть обработку ошибок (catch exception), с откатом транзакции, очисткой используемых объектов (javax.jms.Connection, javax.jms.Session, и т.д.) и вызовом функции создания подключения.

3. Для удобства, можно использовать Redistributable clients – переносимый, не требующий установки, mq-клиент. Пример подключения redistributable-клиента в java-приложении:
java -cp "/opt/mq_client/jms.jar;/opt/mq_client/com.ibm.mq.allclient.jar;." JmsProducer -m QM1 -d TESTQ1

4. Ознакомиться с другими рекомендациями:

5. Пример кода: Icon of WMQ Documentation JmsProducer (9.7 KB)

VN:F [1.9.22_1171]
Rating: 0.0/5 (0 votes cast)
Метки: , , , ,
Опубликовано в Development, WebSphere MQ, Тюнинг

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

*

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">

Выбор языка: