Windows Communication Foundation 发布/订阅系统的流式传输实现
在 Windows Communication Foundation (WCF) 应用程序开发中,实现发布/订阅系统是一个常见的需求。本文将详细介绍如何使用 WCF 的流式传输模式来实现高效的发布/订阅系统。
1. 绑定选择
当 WCF 应用程序通过 MSMQ 队列向其他 WCF 应用程序发送消息时,开发者通常会使用预定义的 NetMsmqBinding ,而非 MsmqIntegrationBinding 。 NetMsmqBinding 更加灵活,不需要以 MsmqMessage<T> 类型的实例形式发送和接收消息,并且允许将消息调度到除未匹配消息处理程序之外的操作。只有当 WCF 应用程序必须通过 MSMQ 与非 WCF 应用程序通信时,才需要使用 MsmqIntegrationBinding 。在某些情况下,尽管所有通过 MSMQ 通信的应用程序都是 WCF 应用程序,但仍使用 MsmqIntegrationBinding ,这是因为 MSMQ 中 PGM 协议的实现实际上代表了一个介于 WCF 应用程序之间的非 WCF 应用程序。
2. 流式传输的发布/订阅
使用回调合约或 MSMQ PGM 进行发布/订阅时,每次从发布者向订阅者发送通知都需要发送整个消息,这会带来一定的成本。当通知大小占消息总大小的比例较大,且通知频率较低时,这种成本是可以接受的。但在实际应用中
超级会员免费看
订阅专栏 解锁全文
9

被折叠的 条评论
为什么被折叠?



