我想建立一个高可靠的服务,所以我需要在NATS端点处理各种网络问题;
我知道bridgeErrorHandler参数,但实际上在以下路线中,它似乎无法正常工作:
errorHandler(defaultErrorHandler()
.maximumRedeliveries(5).redeliveryDelay(10000));
// receiving from NATS
from("nats:{{test_topic}}?bridgeErrorHandler=true")
//and print it to system out via stream component
.errorHandler(defaultErrorHandler().maximumRedeliveries(5).redeliveryDelay(10000))
.to("stream:out")
.log("${body}");
代码的行为很奇怪,它没有解决1.如果NATS服务器关闭,应用程序就会退出,如果服务器在启动后关闭,则执行默认策略(2秒重试),忽略我在路由中的设置和上下文级别。 我该如何处理第1点和第2点?
对于第2点,您是否尝试过设置reconnectTimeWait参数?对于第 1 点,处理异常,也许你可以尝试 exceptionHandler