网络如下所示。
我的应用程序在客户端有一个在线/离线检查方法,并且每分钟运行一次。
首先,我在客户端的应用程序是通过.NET WebResponse类请求一个30秒超时的网页在线/脱机检查的。目标IP是负载均衡器。在客户端工作时间(9:00~21:00)之间,在运行在线/脱机检查方法时,只得到大约2~10次超时结果。
然后,我认为WebResponse的流量要比Ping大,所以我改变了使用System.Net.NetworkInformation.Ping而不是WebResponse的方法。超时时间也是30秒,目标IP也是负载均衡器。但问题是,在客户端工作时间(9:00~21:00)之间,在运行在线/脱机检查方法时,我得到了大约50~100次超时结果。
我不明白为什么Ping比WebResponse得到更多的超时结果?使用WebResponse进行在线/离线检查比使用Ping更好?
发布于 2018-11-11 00:36:08
使用WebResponse进行在线/离线检查比使用Ping更好?
如果您试图评估web应用程序是否正在响应,则需要使用WebResponse。Ping工具唯一能告诉您的是负载均衡器的接口是否响应。
至于您的不规则结果,可能是您丢失了相同数量的通信量,但是由于WebResponse是IP,而ping是ICMP,所以WebResponse正在补偿糟糕的连接。
你提到你有2000个客户,这个问题是在办公时间发生的。这个检查本身是否有可能导致您的问题?如果您的所有客户端在每个人都使用该检查时开始发送此支票,那么您可能会对应用程序造成不必要的负载吗?
https://stackoverflow.com/questions/53237485
复制相似问题