我正在开发一个Mule应用程序,它读取一系列数据库记录,生成报告并将它们发布到许多HTTP位置。遗憾的是,服务器没有群集,因此两个服务器都可能读取记录并多次发布,这是不可取的。有人建议最简单的方法来阻止所有三个Mule服务器读取数据库,生成报告并将其发送出去吗?
答案 0 :(得分:0)
简短回答 - 使用群集。 答案很长 - 这个世界没有魔法。如果你不使用协调你努力的集群,你应该自己做。由于服务器不在群集中,因此应以某种方式进行通信以防止重复。群集是最佳答案,它旨在实现这一目标。没有集群 - 手动执行"。
有很多方法可以做到这一点。重点是它应该是唯一一个负责协调的地方(我可以说群集吗?:) - 最好的方式恕我直言,它是数据库 - 它是所有这些服务器通用的一个地方。最简单的方法是标记已处理的记录并仅处理未处理的记录。你如何做到这一点 - 额外的桌子或额外的场地 - 它取决于你。