繁体   English   中英

C#可以安全地每隔5秒从200台客户端PC ping服务器(在本地网络中)吗?

[英]C# is it safe to ping server (in local network) from 200 client PCs every 5 seconds?

我正在C#中构建一个应用程序(客户端),它使用Ping.SendAsync(host,3000,null)来ping本地网络中的服务器,以验证连接和发送数据。 该应用程序将安装在大约200台电脑中。

问题是:

是否安全地每天从这200台PC中每隔5秒ping一次服务器?

提前致谢

你应该已经知道了这个问题的答案 - 这取决于你

假设您平均每秒发送40个请求。 Web服务器每秒可以处理40个请求吗? 它可能,但您没有提供服务器正在做什么的任何细节。

对于服务器接收请求并返回简单值,则毫秒数可以是单个数字。 如果服务器需要读取或写入磁盘,或连接到另一台服务器(例如,数据库),那么毫秒数可能是两位数。 如果连接到远程服务器或多个服务器,它甚至可能需要三位数 - 超过100毫秒。

如果服务器需要处理一些数字并计算一些东西,那么就没有办法猜测 - 我所知道的可能需要一天。

假设服务器没有运行任何需要专用资源的其他关键系统,那么你真的对这里的两件事感兴趣

  • 手术需要多长时间才能完成? 它显然需要在5秒内完成,因为服务器将在那时想要发出另一个请求,他们只是排队导致混乱。
  • 服务器可以处理多少个并发请求? 确保您没有运行单线程服务器; 您希望能够同时处理多个请求。 这将再次确保请求不排队。

你需要平均每秒40,这真的不是很多 - 假设没有太多的处理发生。 但是知道这是否是一个“好主意”的方式就是简单地测试它。 您应该使用测试框架或编写测试工具 - 这非常简单,只需编写尽可能快地访问服务器的应用程序。 您将需要从多个客户端计算机运行测试,否则您将无法确定单个客户端计算机不是瓶颈。

这听起来可能很乏味,但它既有必要又有教育意义。

那一天只有大约110MB ......我不会强调它。

你确实提到发送数据...确保你的数据包大小合适(你想避免自己DDOS)。

如果它在互联网上运行,我可能会更加小心。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM