High Performance Browser Networking chapter 1

Web性能权威指南 第1章: 延迟与带宽

前言

近几年来,WPO(Web Performance Optimization,Web 性能优化)产业从无到有, 快速增长,充分说明用户越来越重视速度方面的用户体验。
  • 延迟(ms): 消息(message)或分组(packet)从起点到终点经历的时间.

    • 传播延迟 消息从发送端到接收端需要的时间,是信号传播距离和速度的函数
    • 传输延迟 把消息中的所有比特转移到链路中需要的时间,是消息长度和链路速率的函数
    • 处理延迟 处理分组首部、检查位错误及确定分组目标所需的时间
    • 排队延迟 到来的分组排队等待处理的时间
  • 带宽(Mbit/s): 逻辑或物理通信路径最大的吞吐量

Tips:

  • 研究表明:在软件交互中,哪怕 100~ 200 ms 左右的延迟,我们中的大多数人就会感觉到“拖拉”;如果超过了 300 ms 的 门槛,那就会说“反应迟钝”;而要是延迟达到 1000 ms(1s)这个界限,很多用户 就会在等待响应的时候分神,有人会想入非非,有人恨不得忙点别的什么事儿。

  • CDN(Content Delivery Network,内容分发网络)服务的用途很多,但最 重要的就是通过把内容部署在全球各地,让用户从最近的服务器加载内容, 大幅降低传播分组的时间。 或许我们不能让数据传输得更快,但我们可以缩短服务器与用户之间的距 离!把数据托管到 CDN 能够显著提高性能。

  • 大多数网站性能的瓶颈都是延迟,而不是带宽!

  • traceroute 是一个简单的网络诊断工具,可以列出分组经过的路由节点,以及它在 IP 网络中每一跳的延迟。为找到每一跳的节点,它会向目标发送一系列分组,每 次发送时的“跳数限制”都会递增(1、2、3,等等)。在达到跳数限制时,中间 的节点会返回 ICMP Time Exceeded 消息,traceroute 根据这个消息可以计算出每 一跳的延迟。
    在 Unix 平台上,可以在命令行运行 traceroute。而在 Windows 平台中,相应的 命令叫 tracert。

Zerlz wechat
扫码关注一个很懒的程序员!
Winter is coming, give me a penny!