gpt4 book ai didi

wcf - 4.0/WCF : Best approach for bi-idirectional message bus?

转载 作者:行者123 更新时间:2023-12-02 04:16:17 26 4
gpt4 key购买 nike

只是技术更新,现在 .NET 4.0 已经发布。

我编写了一个应用程序,它通过基本上是消息总线(而不是方法调用)与服务器通信。这是基于应用程序的内部架构(它是多线程的,传递消息)。

从客户端到服务器的消息数量有限,从服务器到客户端的消息要多得多。其中大部分可以通过单独的专用机制处理,但最后我们谈到每秒可能有 10-100 条小消息从服务器发送到客户端。

客户端应该在“互联网条件”下运行。这意味着可能是标准 NAT 设备(即典型的 DSL 路由器)后面的家庭最终用户 - 不能假设有防火墙安全因此“开放”网络。

我希望尽可能少的延迟和尽可能少的通信负担。

处理消息总线回调的最佳技术方法是什么?如果需要发送某些内容,我可以定期调用服务器进行消息传递...
...但是我有什么选择来处理从服务器到客户端的消息?

  • WsDualHttp 是如何工作的?特别是在 NAT 场景下?

  • 就像一个注释:轮询很可能结束 - 这里的主要问题是我会有很大的开销或很大的延迟,两者都不是真正想要的。从技术上讲,我会喜欢某种流式方法,服务器可以在他生成消息时将消息写入流,然后在消息到来时将它们发送给客户端。不过,不确定这对 WCF 是否可行(如果不是,我可能会决定在 WCF 之外处理整个消息部分,并通过 WCF 进行控制/登录/设置/销毁)。

    最佳答案

    对于双向通信,最好的选择是 NetTcpBinding,而不是 http 绑定(bind),如果它们可用的话。

    这样做的好处是只需要客户端可以发起与服务器的连接。

    关于wcf - 4.0/WCF : Best approach for bi-idirectional message bus?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2674562/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com