用于进程间通信的WCF双工通道

时间:2017-02-10 13:45:23

标签: wcf duplex-channel

我有这样的系统:

Windows服务(WCF,数据/事件)< - >网络应用< - > Web客户端

我需要同时响应客户请求。我也为客户提供一些服务。所以双工渠道是要走的路。但我需要高吞吐量,因为客户端同时调用。

请求/回复方法

为了不串行化频道请求,我需要更多的并行呼叫频道,对吧?但是如何处理回调通道呢?何以保持接收事件仍然开放,即使是在频道错误上?

OneWay方法

在频道上应该足够了(没有等待数据准备),但是如何将发送到回调的数据与原始请求联系起来,以便能够为客户端撰写响应?

要走的路是什么?谢谢。

1 个答案:

答案 0 :(得分:1)

在一个简单的例子中,当Web客户端向Web应用程序发送请求,并且Web应用程序(可能)向WCF服务发送请求时,根本不需要双面绑定。< / p>

至于由在Web客户端中触发的服务引发的事件,我建议使用支持message brokerWebSockets - 例如RabbitMQ。它与WebSockets和plugin兼容WCF binding

将事物放在一起,可以创建一个RabbitMQ服务器,该服务器接受来自WCF服务的消息并将其发送到Web客户端,该客户端订阅来自Javascript的事件订阅源。