首页 > 编程知识 正文

架设web服务器步骤(如何通过端口访问不同的服务器)

时间:2023-05-05 21:54:36 阅读:71177 作者:2729

Web浏览器如何与Web服务器通信,在理解Web优化的必要性之前,必须知道问题的根本原因——浏览器和服务器通信方式的基本属性引起了这个问题,如图1-2所示。

图1-2用户向example.com发送请求。 用户必须通过浏览器发送网页请求,然后等待服务响应并发送内容。 在服务器发送响应之前,用户无法在浏览器中接收网页

当人们说“Web性能的重点是提高网站的加载速度”时,他们的主要兴趣是缩短加载时间。 简而言之,加载时间是指从用户请求网站到网站显示在用户屏幕上的时间。 其驱动机制也就是从用户请求内容到服务器响应用户所需的时间。

想象一下这个过程。 进咖啡店,点一杯深煎咖啡,然后等一会儿。 可以享受。 基本上,点咖啡和与网络服务器通信没有区别。 要求了什么,最后得到了那个。

当浏览器请求网页时,它使用称为超文本传输协议(通常称为HTTP )的协议与服务器进行通信。 浏览器发出HTTP请求,Web服务器返回包含状态代码和请求内容的HTTP响应。

在图1-3中,可以看到对example.com的请求。 (该网站实际存在。 信不信由你。 动词GET要求服务器位于/index.html中。 由于HTTP协议有多个版本,因此服务需要知道使用的是哪个版本的协议(在本例中为HTTP/1.1 )。 最后,请求指示需要哪个主机名资源。

图1-3向example.com分析HTTP请求

提交请求后,将收到200 OK的响应代码。 此响应代码确保请求的资源实际存在,并且响应中还包含index.html的内容。 然后,Web浏览器下载并分析index.html的内容。

上述所有步骤都会产生所谓的延迟,如请求到达Web服务器所需的时间、Web服务器聚合和发送响应内容所需的时间、Web浏览器下载响应内容所需的时间等。 提高性能的主要目的之一是缩短延迟(即响应到达客户端所需的时间)。 如果单个请求发生延迟(如本示例中的example.com),则影响可能很小。 但实际上,加载任何网站都不仅仅是对单个内容的要求。 随着这些请求的数量增加,用户体验更容易受到加载速度降低的影响。

在HTTP/1服务器和浏览器之间的通信中,可能会出现一种称为“线外阻塞”的现象。 这是因为浏览器限制了在一个时间点发出的请求数(通常为6个)。 如果一个或多个请求正在处理中,而剩下的请求已完成,则对内容的新请求将被阻止,直到原始剩下的请求完成。 此行为会增加页面的加载时间。

HTTP/2是HTTP的新版本,大大解决了头块问题,得到了浏览器的广泛支持。 服务器端的作用是支持协议实施,但截至2017年6月,约15%的Web服务器使用HTTP/21。 由于HTTP/2允许不支持HTTP/2的客户端返回到HTTP/1,因此仅支持HTTP/1的客户端更容易受到旧版本协议的影响。 此外,与HTTP/1服务通信的浏览器会遇到相同的问题,而与支持HTTP/2的能力无关。

我们所在的世界很复杂,所以我们仍然需要同时兼容协议的两个版本。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。