我之所以问这个问题,是因为这里的下载速度只有 1MBps,但网页加载时间却很长(绝对不是 1 MBps)。
我猜访问网页基本上就是从服务器请求网页,然后以某种方式“下载”网页并呈现它。
我错了吗?是什么原因导致我的下载和网页速度有如此大的差异?
答案1
有些网页包含许多单独的组件,所有这些组件都必须单独下载。您的浏览器会为您处理所有这些,但性能通常会降低,因为必须建立许多不同的连接,并且有些连接可能需要等待其他连接完成。此外,网页通常包含来自不同服务器的数据(广告可能来自其自己的服务器),任何元素的延迟都会减慢整体速度。文件只是从一个地方下载一个文件而已。
因此,带宽(单位时间内可以下载的数据量)对于文件下载非常重要。延迟(额外的时间)对于网络来说更为重要。
答案2
这可能是由以下任何/所有原因造成的:
- 服务器很慢。
- 服务器连接速度很慢。
- 你的电脑很慢。渲染也需要时间。
- 虽然连接允许 1Mbps 的流量,但延迟较高。这就像一艘船。你可以在船上装载很多东西,但要花很长时间才能到达目的地。
答案3
了解网页的下载方式非常重要,这样才能理解为什么下载 1MB 的文件甚至比下载 256kb 的网站还要快。
- 如果 Web 服务器针对 HTML/JavaScript/等使用了 GZIP 压缩(最有可能),您的浏览器将下载压缩内容,然后必须对其进行解压缩。
- 图像可能只有 30-40k,但解码后它们在内存中可能达到数兆字节
- 如果网站有多个外部文件(CSS/JavaScript/图像),则每个文件都可以通过单独的连接下载,作为浏览器组成页面的一部分
- 下载文件是 HTTP/FTP 中的一个基本操作,它被简化了。没有内容需要识别和呈现
答案4
对于下载,在文件传输开始时协商连接,然后您的速度恢复正常。文件传输的这一部分很慢(有时您可能会在 Web 浏览器状态栏中看到...向 [site] 发送请求...等待 [site] 的回复,这需要一段时间)。每次您请求网页时,都会进行相同的协商。也可能是由于加载导致服务器响应请求很慢,或者您的浏览器渲染数据很慢。