我有一个应用程序使用Camel Netty4组件作为消费者端点,配置为TCP客户端(clientMode设置为true)并启用了重新连接选项。重新连接功能运行良好,TCP客户端在连接中断后自动重新连接到远程服务器。不幸的是,似乎这种重新连接行为无限期地运行,直到建立连接。是否有某种方法可以为此重新连接功能设置限制,即限制在发生连接错误之前可以进行多少重新连接尝试?
另一个问题,但这个问题是作为生产者实现的Netty4组件,它将有效负载发送到远程服务器。有没有办法配置端点以启用重新连接功能,这将允许TCP客户端在抛出连接错误之前尝试建立连接多次尝试?
答案 0 :(得分:1)
在Camel 2.17-SNAPSHOT中,无法限制重新连接尝试的数量。重新连接由ClientModeTCPNettyServerBootstrapFactory#scheduleReconnect
处理。见here。
目前它并没有跟踪尝试次数,但通过在匿名Runnable
内添加计数器来实现此功能非常简单。
请你在Camel JIRA打开一张票?
谢谢!
答案 1 :(得分:0)
我认为目前消费者对重试功能的限制是可用的,但您可以指定这些重试可能发生的时间间隔,时间单位以毫秒为单位。