套接字客户端试图向套接字服务器推送数据.需要帮忙搬运

本文关键字:套接字 数据 客户端 服务器 | 更新日期: 2023-09-27 18:18:47

我需要创建一个高性能应用程序,其中我将同时从套接字客户端获取500个套接字消息。根据我的日志,我可以看到我的双核系统一次处理80条消息。

我正在使用异步套接字(. beginreceive),我已将NoDelay设置为true

从我的客户端和服务器的日志中,我可以看到我从客户端写的消息在3-4秒后被我的服务器读取。

我的应用程序的服务时间应该少很多。

套接字客户端试图向套接字服务器推送数据.需要帮忙搬运

首先,您应该发布当前代码,以便发现任何潜在的错误。

第二,如果你使用的是。net 3.5,你可能想看看SocketAsyncEventArgs的增强。

开始查看您的资源使用情况:

  • CPU使用情况-包括整个系统,以及您的特定进程。
  • 内存使用情况-同上。
  • 网络统计数据。

一旦你确定了瓶颈在哪里,社区和你自己都可以更容易地看到下一步应该关注什么来提高性能。

检查您的代码也可能是必要的-但这可能更适合https://codereview.stackexchange.com/.

当你做一个套接字。听着,你的待办事项是多少?我不能说。net 4.0,但在2.0中,我看到了一个问题,一旦你的积压被填满(太多的连接尝试太快),那么一些套接字将获得TCP接受,然后TCP重置。然后客户端可能会或可能不会尝试重新连接。这会导致连接瓶颈,而不是数据吞吐量或处理瓶颈。