Mik*_*Dev 6 .net wcf msmq load-balancing
经过大量阅读书籍和网络阅读后,我注意到有关WCF和MSMQ可用于实现高吞吐量的信息提示.我所看到的信息提到在一个从单个MSMQ队列中读取的服务器场中使用多个WCF服务.问题是我在这里和那里发现段落提到可以完成高吞吐量,但我似乎无法找到如何实现它的文档.以下是MSDN文章的摘录.
以下段落来自排队通信的最佳实践 http://msdn.microsoft.com/en-us/library/ms731093.aspx 要获得更高的吞吐量和可用性,请使用从队列中读取的WCF服务场.这要求所有这些服务在同一端点上公开相同的合同.场方法最适用于具有高生成率消息的应用程序,因为它允许从同一队列中读取所有服务.
这就是我想要解决的问题.我有一个Intranet应用程序,客户端向WCF服务发送请求.但我希望能够在服务器场中的多个服务器上对WCF服务进行负载平衡.我还希望服务器场中的这些WCF服务在队列中有项目可用时从远程MSMQ执行事务读取.如果这是可能的,我遇到的一个问题是我不理解WCF从远程队列中检索消息的激活过程.
如果这是可能的,有没有人知道任何可以详细解释它的文章或网络广播?
BarDev
我不知道任何文章,但作为概念证明,我针对 msmq 运行了现有 wcf 应用程序的多个实例。
发生的情况是,如果队列中已存在 10 条消息,则它们仅由一个 wcf 实例处理。
然而,发布到队列上的所有后续消息几乎在所有 wcf 实例之间平均分配,从而提供了一个非常简洁的负载平衡解决方案。
您需要做的是创建针对 msmq 运行的单个 wcf 服务,确保其正常工作,然后通过运行越来越多的 wcf 服务实例来查看发生了什么
归档时间: |
|
查看次数: |
1824 次 |
最近记录: |