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