我希望在持久tcp连接(SendSocketOpen
设置为true)期间出现异常后关闭套接字。目前我相信Mule不会为我清理它,它只是释放套接字,这意味着它将它返回到池中。
答案 0 :(得分:2)
对于记录,除非您在连接器或端点上将keepSendSocketOpen
(不是SendSocketOpen
)设置为true,否则Mule将在将套接字池返回时关闭套接字。如果强行关闭套接字,Mule应该恢复,因为它在从池中取出套接字时验证套接字。所以Mule应该检测到它已被关闭并重新创建它。
问题确实是要抓住套接字:AFAICS唯一的选择是扩展org.mule.transport.tcp.TcpMessageDispatcher
并使用service-overrides
子元素配置连接器,该元素提供构建的TcpMessageDispatcherFactory
你自己的调度员的味道。