前端性能毫秒必争方案(一)HTTP请求

在讲http知识之前,有必要提及下网络七层协议OSI(Open System Interconnect)的缩写

犹如水浒里面的七星聚义,没这七星,就没有108将。(已经放置文章最后面)

layers.jpg

减少http请求次数原因在于


1、Http连接 RequestHeader 的开销

众所周知,后端不管是java还是php,都能使用类似htppRequest
.getHeader(“XXX-XXX”)方法。为什么呢?这是因为每次请求都会带上一些额外的信息Request Header,所以当请求越多的时候,在网络上传输的数据自然就多,传输速度自然就慢了。

其实request自带的数据量还是小问题,毕竟request能带的数据量还是有限的。


2、http连接的流程串行请求限制(2-8个)
  1. 域名解析 =》2. 开启TCP连接 =》3. 发送请求 =》4. 等待(主要包括网络延迟和服务器处理时间) =》5. 下载资源 =》6. 文件解析执行时间
    在http1.1,keep-alive是默认的,而且现代浏览器都有DNS缓存,
    所以DNS寻址由于有DNS缓存–无差别; 3次握手由于有keep-alive,一条和一千条都只需一次TCP握手–无差别

HTTP1.1协议规定请求只能串行发送,这也是HTTP性能最差和最让人诟病的地方,也就是说一百个请求必须依次逐个发送。第80个请求必须依赖于第79个请求正常返回之后才能发送。这样就平白无故多出了99个网络RTT(网络延迟)。
浏览器通过一个TCP连接发送100个请求的事情根本就不可能发生。

当你有100个资源时,这100个资源在浏览器看来是“同时都要”,而浏览器并没有什么智商去判断应该用1个链接解决这100个资源,还是用100个链接来解决,不然浏览器永远都只有一个TCP链接了。

因此浏览器的静态的策略是在自己可承受的范围内尽可能地用多的链接来解决,大部分浏览器似乎是2-8个链接,这就导致握手也是2-8次。

Paste_Image.png
HTTP 连接个数(服务器默认最大连接数 16,777,214)
3、http请求少了,DNS 查询自然就少了,真的被百度里面千篇一律感动了。
http连接串行请求限制(2-8个)

第一层:物理层(Physical)

规定通信设备的功能的和过程的特性,统一物理设备的参数,用以建立、维护和拆除物理链路连接

第二层:数据链路层(Data Link)

数据链路可以粗略地理解为数据通道。
媒体是长期的,连接是有生存期的.在连接生存期内,收发两端可以进行不确定次数据通信.
每次通信都要经过建立通信联络和拆除通信联络两过程.这种建立起来的数据收发关系就叫作数据链路.

第三层:网络层(Network)

网络层的任务就是选择合适的网间路由和交换结点, 确保数据及时传送,
那在计算机网络中进行通信的两个计算机之间可能会经过很多个数据链路,
也可能还要经过很多通信子网。

第四层:传输层(Transport)

传输层是两台计算机经过网络进行数据通信时,第一个端到端的层次,具有缓冲作用。第四层的数据单元也称作数据包(packets)
示例:TCP,UDP,SPX。

第五层:会话层(Session)

会话层提供的服务可使应用建立和维持会话,并能使会话获得同步。会话层使用校验点可使通信会话在通信失效时从校验点继续恢复通信。这种能力对于传送大的文件极为重要。

第六层:表示层(Presentation)

表示层的作用之一是为异种机通信提供一种公共语言,以便能进行互操作。它将欲交换的数据从适合于某一用户的抽象语法,转换为适合于OSI系统内部使用的传送语法。即提供格式化的表示和转换数据服务。数据的压缩和解压缩, 加密和解密等工作都由表示层负责,这种类型的服务之所以需要,是因为不同的计算机体系结构。
例如,IBM主机使用EBCDIC编码,而大部分PC机使用的是ASCII码。在这种情况下,便需要会话层来完成这种转换。

第七层:应用层(Application)

应用层为操作系统或网络应用程序提供访问网络服务的接口。应用层协议的代表包括:Telnet、FTP、HTTP、SNMP


Paste_Image.png

作者 :刘俊斌 (976500133@qq.com
仓促成文,有不对的地方请力砍斧正或用脚踢正。当然我是不会改的。
转载请务必注明出处,否则追究法事(责任)

IMG_0923.JPG


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,911评论 5 460
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 82,014评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 142,129评论 0 320
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,283评论 1 264
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,159评论 4 357
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,161评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,565评论 3 382
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,251评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,531评论 1 292
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,619评论 2 310
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,383评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,255评论 3 313
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,624评论 3 299
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,916评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,199评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,553评论 2 342
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,756评论 2 335

推荐阅读更多精彩内容

  • 国家电网公司企业标准(Q/GDW)- 面向对象的用电信息数据交换协议 - 报批稿:20170802 前言: 排版 ...
    庭说阅读 10,802评论 6 13
  • 13.服务器图片改了,url没有变,需求,服务器的图片变了,就从服务器加载图片,如果服务器的没变,就从本地加载 1...
    AlanGe阅读 1,125评论 0 1
  • 简介 用简单的话来定义tcpdump,就是:dump the traffic on a network,根据使用者...
    保川阅读 5,934评论 1 13
  • 听到兄弟在二十出头的年龄就考虑该过安稳的生活, 心里不免 为他 也为我 担心。曾经讨论的关于:旅行 音乐 理想。如...
    李青朴阅读 216评论 0 2
  • 五 我没有背叛任何人,无论是梁国还是夏国。 我在夏国呆了半月有余,就这么单枪匹马的回了梁国,我不知道会发生什么。 ...
    苍折阅读 289评论 15 7