想象一下,我们在BizTalk上构建了Notification服务。一旦服务收到通知,它就应该将此通知发送给其他系统。如果我们有2-3个系统,我们可以添加一些Web服务引用并通过相应的端口发送消息。但我想知道如果有数百个订阅的Web服务我们应该发送消息呢?将消息重新发送到100个Web服务的最佳方法是什么?
答案 0 :(得分:3)
正如Filburt所说!您可以从业务流程中获得一个逻辑发送端口,并将业务流程绑定到管理控制台中的发送端口组;所以你可以随意添加或删除发送端口。如果任何服务也需要转换消息,则可以执行任何映射。
答案 1 :(得分:2)
与Filburt + teepeeboy达成协议,并补充一点,如果您提供推送数据服务,您可能希望控制每个端口,以控制SLA,重试,可能与计费等相关联。您可能需要增加相关WCF适配器上的线程数和/或增加发送主机和/或群集服务器的数量以实现可伸缩性。
您可能还会考虑使用像MSMQ或MQSeries这样的异步适配器,因为您的100个订户中的一个更多的用户可能会变得更高。 w.r.t. “ACK”回复,通过限制对队列的访问并使队列成为事务性的,您可以“证明”您的订阅者已从事务上将消息从队列中删除。