【问题标题】:Client-Server architecture客户端-服务器架构
【发布时间】:2011-03-07 12:12:16
【问题描述】:

这个话题之前已经讨论过百万次了,但让我澄清一下我的需求: 我需要一个控制系统并包含必要功能的服务器。此外,将有“n”个客户端,它们仅代表 HI/GUI 和调用服务器端功能。服务器本身应该能够将数据发送回客户端并调用客户端函数(如关闭、退出等......)

我听说过双工服务/合同 (http://msdn.microsoft.com/en-us/library/ms731064.aspx),但我不确定我能做到多远。 你会怎么处理?

【问题讨论】:

  • 如果我理解,您正在寻找一种集中的点对点,例如 bit-torrent?
  • 类似,但客户端不需要相互通信。我只需要客户端-服务器和服务器-客户端通信。

标签: c# client-server


【解决方案1】:

我最近制作了一个概念验证应用程序,该应用程序使服务器和客户端都托管了一个 WCF 服务。客户端连接到服务器,然后在握手调用中,向服务器提供连接信息,以允许服务器创建一个单独的连接返回客户端。它可以同时处理从本地 lan 到远程站点上 64k 线路的网络链接上的多个客户端。

【讨论】:

  • 这听起来很有趣。您是否使用 IIS 服务器来托管服务端 WCF 服务?我说的不够具体,如果我们不需要任何 IIS 服务器就好了。
  • 您不需要 IIS,您可以在控制台应用程序、win 应用程序、win 服务或 IIS 中托管 wcf 服务。我发现的好处是,无论您使用何种绑定,您基本上都可以拥有两种方式的通信。 HTTP 或 tcp。客户端不需要轮询服务器以获取更新,它的 WCF 主机只监听服务器调用。
  • 非常感谢。我已经尝试过您的解决方案,它对我来说很好,可以满足我的需求。再次感谢!
【解决方案2】:

您可以使用 WCF,并将服务托管在 IIS 中的服务器上,在客户端的应用程序中,并让客户端在服务器上注册它的端点。

【讨论】:

    猜你喜欢
    • 2012-07-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-02
    • 2011-07-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多