【发布时间】:2013-02-27 13:22:14
【问题描述】:
我们需要编写高性能的 tcp 服务器并使用 azure 作为主机。 我们有几种选择:
如http://blog.maartenballiauw.be/post/2010/01/17/Creating-an-external-facing-Azure-Worker-Role-endpoint.aspx 所述,在 C# 中编写自定义 tcp 服务器。但我们不想重新发明轮子。
使用 WCF(可能是最好的方法)。在这种情况下,我们需要很好地了解如何配置它,因为有很多配置选项。有人可以推荐一些配置吗?我们应该使用工作人员角色托管还是 IIS 托管?
信号/R。据我了解,它有第一版,目前已准备好生产,可用作 tcp 服务器。 signalR 和 WCF 哪个更好、性能更好?我们应该使用工作人员角色托管还是 IIS 托管?
零/C ICE。有人用吗?
使用 ZeroMQ C# 绑定,如下所述http://zguide.zeromq.org/cs:asyncsrv
不幸的是,我们仍然不知道我们的协议的一些细节(但它将是二进制的)等等。因此,我们需要一种可能性来轻松更改某些服务器行为,而无需进行大的代码更改。
另外,很高兴知道 azure 的负载均衡器如何影响服务器行为。
【问题讨论】:
-
您也可以查看我的网络库:blog.gauffin.org/2012/11/… 和 blog.gauffin.org/2012/05/…
-
首先,如果您需要原始 TCP,SignalR 不会帮助您。 SignalR 在所有情况下都可以通过 HTTP 开始工作,但如果客户端和服务器都支持它们,它可以从那里升级到 WebSockets。也就是说,我认为您需要提供更多详细信息,说明您需要沟通什么样的事情以及您的性能要求究竟是什么,才能获得好的答案。跨度>
标签: c# wcf azure signalr zeromq