我正在尝试为mule文件端点构建可靠的机制。我们的想法是记录数据库中的每条消息以及处理状态。如果服务器出现故障,我可以读取数据库并获取消息的状态,如果消息未成功处理则要重试。你能给我一些构建这样一个框架的指针。可以在mule启动时执行可以从db获取信息的处理器(db reader)。
答案 0 :(得分:0)
为此,您需要注意以下事项
1)将消息从流中取出并存储在数据库中
- 为此你需要使用一些模式或更精确地说一个单独的过程将它存储在数据库中
解决方案 -
a)您可以使用线控模式生成一个单独的进程来存储您获取到数据库中的每条消息。这种线控是您可以设计的另一种流程。
b)您可以使用Flow引用,将其作为异步,以便启动单独的流,并使用您需要存储在数据库中的消息。
您需要研究的问题是,当您重新启动流时,相同的消息会记录到数据库中,如果您不希望这样,那么请对上面给出的相同解决方案添加更多调整。
2)如果发生任何错误(在您的情况下是服务器关闭),则需要重新启动流程
- 为此,您需要设置流量,以便您可以从已停止或发生错误的地方回叫您的流量。
解决方案 -
a)使用端点主要是vm端点并在需要重新启动时调用流。使用一个java程序将消息发送到vm端点,如上所述