【问题标题】:c# multiple server - multiple clients latencyc# 多服务器 - 多客户端延迟
【发布时间】:2013-07-03 11:32:16
【问题描述】:

我有自定义系统。系统配置如下。

我在 Windows 7 P、C# 和 .Net 2.0 上有 WinForm 应用程序。

它是服务器-客户端应用程序。我有多个服务器系统近 60 个系统。我的应用程序创建多个客户端来连接每个服务器。

每个客户端都有发送/接收后台工作者。如果只有一个客户端向一台服务器发送多个命令(25 个命令),则需要 3 秒。但是,如果每个客户端向每个服务器发送多个命令,则需要 18 秒,而不是 3 秒。

有什么原因吗?

更新 一台 PC 有 4 通道的网卡。每个通道都连接了10个mores服务器控制器。

已编辑 我已经解决了这个问题。使用 BGW(Backgroundworker)实现服务器代码的主要原因。我已经从BGW变成了线程-接收和发送功能。

我得到了每个客户端 25 个命令的快速响应。即使我连接了 50 个客户端,我也得到了整个客户端的相同时间响应。

【问题讨论】:

  • 假设这是TCP,应该是连接开销。
  • 是的,它是 TCP/IP 连接。有什么办法可以提高速度吗?
  • 这很可能是您的服务器实现。但是,您只是笼统地问,不可能说出方式。因此,我投票结束这个问题,因为它无法回答。
  • @AhmedKRAIEM:因为连接开销而延长了 15 秒?这不太可能......
  • 我将服务器实现从 BGW 更改为线程。然后我得到了快速响应。

标签: c# sockets client-server


【解决方案1】:

我已经解决了这个问题。使用 BGW(Backgroundworker)实现服务器代码的主要原因。我已经从BGW变成了线程-接收和发送功能。

我得到了每个客户端 25 个命令的快速响应。即使我连接了 50 个客户端,我也得到了整个客户端的相同时间响应。

【讨论】:

    猜你喜欢
    • 2018-03-17
    • 2016-11-12
    • 1970-01-01
    • 2015-06-26
    • 2019-05-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-01-09
    相关资源
    最近更新 更多