Mule - остановить все потоки от остановки, где соединение MySQL в единственном потоке не удается

У меня есть приложение Mule с несколькими потоками, выполняющими различные операции. Один из этих потоков подключается к внешней базе данных MySQL для получения информации. Если соединение с этой базой данных не удается, мое приложение Mule не запускается и не запускается ни один из моих других, не ошибочных потоков.

Есть ли способ, которым я могу настроить Mule, чтобы вернуться к стратегии исключения потока, соединяющегося с внешней БД, в случае сбоя соединения или какой-либо другой ошибки, чтобы все другие потоки работали как обычно?

1 ответ

Решение

На глобальном соединителе jdbc установите стратегию переподключения и настройте для атрибута блокировки значение false. Пример:

<jdbc:connector name="mysql">
   <reconnect-forever blocking="false" />
</jdbc:connector>

Это остановит исключения подключения от блокировки вашего приложения Mule и позволит другим потокам, которые не зависят от соединителя, работать в обычном режиме.

Подробнее о стратегиях переподключения здесь: http://www.mulesoft.org/documentation/display/current/Configuring+Reconnection+Strategies

Другие вопросы по тегам