我有一个域名要测试。Ping大约为20毫秒。“'HTTP”大约为500毫秒。
为什么它们之间有这么大的差异?这是服务器端的问题吗?是不是差别太大了? 25次。
发布于 2014-12-09 05:11:22
Ping通常作为ICMP回应请求实施。更简单的数据报协议:您发送一个数据包,服务器用相应的数据包进行回复,仅此而已。
HTTP headers仍然是HTTP:必须在两端之间建立TCP连接,并且HTTP服务器必须使用请求的headers进行回复。它显然很快,但不像发送单个数据包响应那么简单。
如果您正在测试域,那么ping是更合适的工具,而HTTP HEAD是更适合测试HTTP服务器的工具。
发布于 2014-12-09 05:11:52
首先,ping是通过不同的协议ICMP实现的。服务器本身直接响应ping。HTTP是一种不同的协议,由必须在服务器上运行的附加应用程序( web服务器)处理(ping是内置在操作系统中的)。根据web服务器的重量,它可能需要更多的时间,而不是像ping这样的东西。此外,HEAD还与特定的URL一起发送。如果该URL由ASP.NET之类的东西处理,而不是直接由web服务器处理,那么必须进行额外的处理才能返回响应。
发布于 2014-12-09 05:10:43
如果我没记错的话,ping请求是在网络驱动程序级别上处理的,因此速度非常快(有时它是由硬件本身处理的,完全跳过软件处理)。它将很好地描述网络延迟。
HTTP HEAD请求必须访问web服务器,web服务器是用户级别的程序,需要复制几次数据位,以及web服务器代码来解析请求等。然后,web服务器必须为请求生成HTTP响应头。根据服务器和请求的页面,这可能需要一段时间,因为无论如何它都必须生成请求的页面(它只向您发送标题,而不是页面内容)。
https://stackoverflow.com/questions/27366824
复制相似问题