为什么请求和响应会丢失?

时间:2008-11-14 04:02:08

标签: http networking

即使在谷歌这样的大型网站上,我有时也会提出请求,而浏览器就在那里。沙漏将无限期地转动,直到我再次点击,之后我立即得到响应。因此,响应或请求只是在互联网上丢失。

作为ASP.NET Web应用程序的开发人员,我有什么方法可以缓解这个问题,因此我开发的网站用户不会遇到这个问题吗?如果有,似乎谷歌会这样做。不过,我希望有一个解决方案。

编辑:我可以验证,对于我们的Web应用程序,即使在绝对最坏的情况下(例如复杂的报告),实际到达服务器的每个请求都会在几秒钟内提供。如果服务器处理请求的时间超过4秒,或者处理请求失败,并且在30天内没有收到该电子邮件,我会收到一封电子邮件通知。

4 个答案:

答案 0 :(得分:3)

客户端提出的请求可能会采取某个特定路径,而该路径恰好在该特定时刻无效。这些都是不可避免的 - 它们只是互联网的结果,它建立在不稳定的组件上,TCP设法确保为其提供某种保证。

像其他人说的那样 - 确保当请求到达您的服务器时,您就可以回复了。其他一切都在你手中。

答案 1 :(得分:1)

他们迷路了,因为互联网是一个很大的地方,有时数据包丢失或服务器过载。为了给您的用户提供最佳体验,请确保您拥有足够的硬件,强大的软件和非常好的网络连接。

答案 2 :(得分:1)

您无法从客户端控制管道一直到您的服务器。管道中的任何地方都可能存在网络连接问题,包括从PC到ISP的路由器,这可能是首先看到的地方。

最重要的是,如果您在浏览器中使用Google.com时遇到问题,那么您可以保证在自己的网络应用中遇到同样的问题至少经常

这并不是说ASP应用程序无法完全依靠它自己生成相同类型的停机体验...经常测试和防御性代码是要记住的关键短语。

我们不要忘记浏览器错误。它们本身并不是完美的应用......

答案 3 :(得分:0)

这个问题/情况不仅与ASP有关,而且它涵盖了保持你的应用程序的整个概念,并且非正式地称为“5个9”或“99.999%可用性”。

维基百科文章为here

如果您查找5个9,您会发现大量有用的信息,您可以根据需要将这些信息应用到您的应用中。