0

我有一个需要收听 ADT 和 ORU 消息的应用程序。这些消息类型既可以在单个通道上接收,也可以根据需要进行后处理。或者,它们可以在单独的队列中接收并单独处理。我将 Camel/mina 用于 MLLP 频道。这种类型的应用程序的传统方法是什么?我一直在尝试考虑这两种方法的优缺点。我想如果它们是分开的,我可以运行单独的应用程序,将数据保存在一个公共数据存储中。这可能会简化开发并成为一种更 SOA 的方法——但这是我能想到的唯一优势。

4

2 回答 2

1

根据我的经验,大多数用户更喜欢区分不同的消息类型和不同的发送者,即每种消息类型和发送者/接收者组合使用一个通道。它的优点是一种类型的错误不会影响另一种消息类型和不同发送方/接收方的通信。如果出现故障或错误消息,也更容易调试。

缺点是你必须监控更多的频道。当然,你也必须考虑其他事情。例如,如果您的会计系统不知道由于 ADT 消息传输已停止而默默地丢弃患者的会计消息,该怎么办?

于 2014-03-12T10:43:41.903 回答
1

您可以创建一个公共通道来接收 ADT 和 ORU 消息,并进一步为 ADT 和 ORU 创建两个单独的通道。向这两个通道中的每一个添加过滤器,以便 ADT
消息进入 ADT 通道,而 ORU 消息进入 ORU 通道。

于 2014-03-13T11:41:10.180 回答