我们想访问一个网站时,每次按下回车或是点击链接,都希望网站页面能尽快的映入到我们眼帘,那您知道每次等待的时间中,都发生了什么?

域名查询时间

我们需要知道,在网络中,两个设备间的通信是需要IP地址才可以的,也就是说,您每次访问网站时,都是通过IP地址实现的,可您输入的明明是域名,并不是IP,这又是什么情况呢?

原因就是您的电脑,会自动去询问设置在您电脑上的DNS服务器,然后通过DNS服务器返回的IP地址访问网站。而询问的过程,就是域名查询时间,大家可以用Ping命令,测试一下与DNS服务器的连接时间,可以大致得出域名查询时间。为什么说大致,因为Ping命令只可以测出连接时间,DNS还需要处理!

网络队列时间

电脑知道要访问网站的IP后,就会与之通信,而在网络中与之通信的不止是您一个,那么多人同时访问,先处理谁后处理谁?这时就需要排队了!排到您了,服务器自然会处理您的请求。

当然不只是网络资源要排队,服务器的内部处理进程,也需要排队的,等待排队还有数据处理,都需要时间的!

页面生成时间

以我们的常见的博客程序WordPress为例,WordPress是用PHP语言所写,通过MySQL来存储数据,Nginx为页面解析。所以PHP首先去找MySQL索要数据,然后再通过Nginx服务生成页面数据。

您的每次浏览PHP都需要去MySQL中索要一次数据,然后再经过Nginx生成,所以您会发现,有些网站打开后再刷新,速度并没有变很快!

文件传输时间

页面数据传输到您的浏览器之后,您的浏览器就会开始加载页面数据包含的文件,例如js库、CSS样式表、图片等等,这些时间就取决于您的带宽和浏览器的处理能力了。

一般的浏览器会默认缓存这些静态类文件(简单来说就是不会经常变的文件)使得再刷新时,不用重新下载,从而加快浏览速度!

评论