HTTP規(guī)范的編輯們已經(jīng)發(fā)布了2.0版本的首個(gè)草案,它直接復(fù)制于SPDY,并將作為后續(xù)改進(jìn)的基礎(chǔ)。很多修改還有待完成,例如添加新特性、移除現(xiàn)有特性以及修改線上文檔等。供測(cè)試實(shí)現(xiàn)使用的草案預(yù)計(jì)明年年初發(fā)布。
HTTP 2.0由IETF的Hypertext Transfer Protocol Bis(httpbis)工作組開(kāi)發(fā),這將成為1999年1.1版本(RFC 2616)發(fā)布以來(lái)的首個(gè)新版本。
HTTP 2.0的目標(biāo)包括:
異步連接多路復(fù)用
頭部壓縮
請(qǐng)求/響應(yīng)管線化
保持與HTTP 1.1語(yǔ)義的向后兼容性也是該版本的一個(gè)關(guān)鍵目標(biāo)。
SPDY是一種HTTP兼容協(xié)議,由Google發(fā)起,目前Chrome、Opera、Firefox以及Amazon Silk等瀏覽器均已提供支持。
HTTP實(shí)現(xiàn)的瓶頸之一是其并發(fā)要依賴(lài)于多重連接。HTTP管線化技術(shù)可以緩解這個(gè)問(wèn)題,但也只能做到部分多路復(fù)用。此外,已經(jīng)證實(shí),由于存在中間干擾,現(xiàn)有的瀏覽器無(wú)法采用管線化技術(shù)。
SPDY在單個(gè)連接之上增加了一個(gè)幀層,用以多路復(fù)用多個(gè)并發(fā)流。幀層針對(duì)HTTP類(lèi)的請(qǐng)求響應(yīng)流進(jìn)行了優(yōu)化,因此現(xiàn)在運(yùn)行在HTTP之上的應(yīng)用,對(duì)應(yīng)用開(kāi)發(fā)者而言只要很小的修改甚至無(wú)需修改就可以運(yùn)行在SPDY之上。
SPDY對(duì)當(dāng)前的HTTP協(xié)議有4個(gè)改進(jìn):
多路復(fù)用請(qǐng)求
對(duì)請(qǐng)求劃分優(yōu)先級(jí)
壓縮HTTP頭
服務(wù)器推送流(即Server Push技術(shù))
SPDY試圖保留HTTP的現(xiàn)有語(yǔ)義,所以cookies、ETags等特性都是可用的。
SPDY中的很多架構(gòu)方法(如多路復(fù)用),W3C HTTP-NG工作組曾經(jīng)進(jìn)行過(guò)早期的探索,但該工作組已于1998年暫停。改進(jìn)HTTP這一問(wèn)題已經(jīng)討論了多年,不久前還成了InfoQ的愚人節(jié)玩笑。
【免責(zé)聲明】本文部分系轉(zhuǎn)載,轉(zhuǎn)載目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點(diǎn)和對(duì)其真實(shí)性負(fù)責(zé)。如涉及作品內(nèi)容、版權(quán)和其它問(wèn)題,請(qǐng)?jiān)?0日內(nèi)與聯(lián)系我們,我們會(huì)予以更改或刪除相關(guān)文章,以保證您的權(quán)益!