gpt4 book ai didi

WCF 双工 vs 套接字编程 vs RabbitMQ

转载 作者:行者123 更新时间:2023-12-03 11:52:07 25 4
gpt4 key购买 nike

我们正在开发一个与 Windows 服务对话的 Web 应用程序(两者都将在 .Net 中开发)。这些调用可以是简单的 CRUD 操作或订阅操作。你能否请不同的替代设置这两个应用程序之间的通信。我可以想到以下选项。请在其中推荐我最好的。

a) 我们可以公开 WCF 服务端点。对于订阅,我们可以使用双工 WCF。

b) 我们可以使用某种代理队列(如 RabbitMQ)。 RabbitMQ 为我们提供了添加回调/订阅的工具。

c) 使用套接字编程来设置两者之间的通信。

如果您能告诉我在哪种情况下应该优先选择哪个选项,那就太好了。

提前致谢

最佳答案

(a) 和 (b) 选项似乎更好。事实上,您可以在 WCF 中使用 RabbitMQ 绑定(bind)。看来您的通信数据是中央数据库。
RabbitMQ 使用 AMQP 协议(protocol),而 WCF 的 Duplex 绑定(bind)使用 MSMQ。
RabbitMQ 来自第三方但稳定。 WCF 具有良好的稳定性历史,具有 WCF LOB 适配器的一些新概念。
两者都是可扩展且高效的。两者都支持发布者/订阅者模式。

但是如果您是第一次编写 WCF 双工,那么它在开发和部署中可能会非常复杂,因为 WCF 更多的是关于配置。
我想向您推荐 SignalR,它是建立在 winsock 和相关通信 channel 之上的。SignalR 可以部署在 ASP.Net 和 MVC 站点上。
目前我正在使用 SignalR 构建一个庞大的通信系统。

看看 ZeroMQ 吧。它比 RabbitMQ 有更好的性能。使用 NetMQ 一个 100% C# 的 ZeroMQ 端口。

希望能帮助到你

关于WCF 双工 vs 套接字编程 vs RabbitMQ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22473447/

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