偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

SPDY協(xié)議簡介及如何編譯含有SPDY的nginx

網(wǎng)絡(luò) 路由交換
SPDY是Google開發(fā)的基于傳輸控制協(xié)議(TCP)的應(yīng)用層協(xié)議 (發(fā)音同“speedy”),以最小化網(wǎng)絡(luò)延遲,提升網(wǎng)絡(luò)速度,優(yōu)化用戶的網(wǎng)絡(luò)使用體驗(yàn)。本文主要了解SPDY的基本概念,以及如何編譯一個(gè)含有SPDY的nginx。

SPDY是Google開發(fā)的基于傳輸控制協(xié)議(TCP)的應(yīng)用層協(xié)議 (發(fā)音同“speedy”),以最小化網(wǎng)絡(luò)延遲,提升網(wǎng)絡(luò)速度,優(yōu)化用戶的網(wǎng)絡(luò)使用體驗(yàn)。SPDY并不是一種用于替代HTTP的協(xié)議,而是對(duì)HTTP協(xié)議的增強(qiáng)。新協(xié)議的功能包括數(shù)據(jù)流的多路復(fù)用、請(qǐng)求優(yōu)先級(jí),以及HTTP包頭壓縮。谷歌表示,引入SPDY協(xié)議后,在實(shí)驗(yàn)室測(cè)試中頁面加載速度比原先快64%。

目前主流瀏覽器Google Chrome Mozilla Firefox Opera Internet Explorer都已經(jīng)支持了SPDY,主流web服務(wù)器Apache、Nginx、Netty、Jetty、node.js等都已經(jīng)開始初步的支持SPDY基本已經(jīng)支持SPDY,SPDY當(dāng)前并不是一個(gè)標(biāo)準(zhǔn)協(xié)議,但SPDY的開發(fā)組已經(jīng)開始推動(dòng)SPDY成為正式標(biāo)準(zhǔn)。

本文主要了解SPDY的基本概念,以及如何編譯一個(gè)含有SPDY的nginx。

HTTP協(xié)議存性能上的一些問題

一個(gè)連接一個(gè)請(qǐng)求。瀏覽器和web server之間都是以短連接方式交互,一個(gè)連接只服務(wù)一次請(qǐng)求,對(duì)于一個(gè)需要加載多個(gè)資源的頁面來說,將會(huì)帶來很高的延遲。

只能由客戶端發(fā)起請(qǐng)求。服務(wù)器不能主動(dòng)的將一些必須的資源推送給客戶端。

HTTP協(xié)議只能對(duì)body進(jìn)行壓縮處理,不能壓縮header。在一個(gè)cookie較多的站點(diǎn),將對(duì)帶寬造成嚴(yán)重的浪費(fèi)。

冗余的頭部。一些頭部在同一個(gè)通道中通過請(qǐng)求在重復(fù)的發(fā)送。像User-Agent Host Accept* 常常是固定不變的,所以不需要重復(fù)發(fā)送

可選的壓縮。HTTP 使用可選的壓縮編碼。但是內(nèi)容應(yīng)該總是使用壓縮格式。

SPDY的目標(biāo)

1.SPDY為WEB定義和實(shí)現(xiàn)了一個(gè)應(yīng)用層的協(xié)議來大大降低延遲。SPDY的高層次目標(biāo)是:

2.減少50%的網(wǎng)頁加載時(shí)間。我們的成果已經(jīng)初步接近這個(gè)目標(biāo)(見下面解釋)。

3.最小化部署復(fù)雜性。SPDY使用TCP作為相關(guān)的傳輸層,所以現(xiàn)存的網(wǎng)絡(luò)基礎(chǔ)設(shè)施,不需要改變。

4.避免網(wǎng)站開發(fā)者需要對(duì)網(wǎng)站作出任何改變。支持SPDY***需要的改變?cè)谟脩魎ser agent和web server。

5.聚集有興趣探索協(xié)議來解決延遲問題的志同道合的開發(fā)者。我們希望和開源社區(qū) 行業(yè)專家一起來開發(fā)這個(gè)新的協(xié)議。

一些具體的技術(shù)目標(biāo):

1.單個(gè)tcp連接支持并發(fā)的HTTP請(qǐng)求

2.壓縮頭部和去掉不必要的頭部,來減少當(dāng)前HTTP使用的帶寬

3.定義一個(gè)容易實(shí)現(xiàn),在服務(wù)器端高效率的協(xié)議。我們希望通過減少邊緣情況 定義易解析的消息格式來減少HTTP的復(fù)雜性

4.讓SSL協(xié)議在現(xiàn)存的網(wǎng)絡(luò)基礎(chǔ)設(shè)施下有更好的安全性和兼容性。雖然SSL確實(shí)引入了延遲,我們認(rèn)為網(wǎng)絡(luò)的長遠(yuǎn)發(fā)展依賴一個(gè)安全的網(wǎng)絡(luò)連接。另外,使用SSL來確保整個(gè)通信不中斷是必要的。

SPDY設(shè)計(jì)和特征

在SSL層上加了一個(gè)SPDY session層,來實(shí)現(xiàn)并發(fā)和stream機(jī)制。

通常的HTTP GET和POST格式仍然是一樣的;然而SPDY為編碼和傳輸設(shè)計(jì)了一個(gè)新的幀格式。

基本特征

復(fù)用流 SPDY允許在一個(gè)連接上無限制的并發(fā)流。因?yàn)檎?qǐng)求在一個(gè)通道上,TCP效率更高:更少的網(wǎng)絡(luò)連接,更少更密集的數(shù)據(jù)包被發(fā)出

請(qǐng)求優(yōu)先級(jí) 雖然無數(shù)的并行數(shù)據(jù)流解決了序列化問題,但他們引入了另外的問題

HTTP頭部壓縮

高級(jí)特征

此外,SPDY提供了高級(jí)特征,服務(wù)器啟動(dòng)流。服務(wù)器啟動(dòng)流能用來分發(fā)內(nèi)容到客戶端,而不需要客戶端請(qǐng)求它。這個(gè)選項(xiàng)可以由web開發(fā)人員通過如下兩種方法配置:

Server push SPDY通過X-Associated-Content頭試驗(yàn)了服務(wù)器推送數(shù)據(jù)給客戶端的選項(xiàng)。這個(gè)頭告訴客戶端服務(wù)器將在客戶端請(qǐng)求資源之前,推送資源給它。對(duì)于初始頁面下載(例如用戶初次訪問這個(gè)網(wǎng)站),這樣能大大提升用戶體驗(yàn)

Server hint 相對(duì)于自動(dòng)的推送資源到客戶端,服務(wù)器使用X-Subresources頭去建議客戶端,來請(qǐng)求特殊的資源,這是在服務(wù)器事先知道客戶的這些資源將被需要的情況下。但是,服務(wù)器仍然在發(fā)送內(nèi)容前等待客戶請(qǐng)求。通過慢速鏈接,這個(gè)選項(xiàng)能減少一個(gè)客戶端發(fā)現(xiàn)它需要的資源數(shù)百毫秒的時(shí)間,并可能對(duì)非初始頁面加載會(huì)更好。

SPDY實(shí)現(xiàn)

下面是已經(jīng)實(shí)現(xiàn)的:

一個(gè)能同時(shí)提供HTTP SPDY服務(wù)的高速 全內(nèi)存的服務(wù)程序。我們將在不久的將來開源這些代碼

一個(gè)能使用HTTP或者SPDY的chrome瀏覽器。

一個(gè)測(cè)試和基準(zhǔn)設(shè)施,來確保頁面是不變的。

NGINX SPDY編譯

http://nginx.org/patches/attic/spdy/README.txt

Nginx 支持 SPDY draft 2

Nginx 從1.3.15開始支持

需要OpenSSL 1.01+

目前已知的問題和限制:

不支持server push

不支持SPDY連接速率限制

如何編譯含SPDY的nginx?

1.安裝OpenSSL 1.0.1+

2.下載nginx 1.3.x 以上的版本

3.解壓nginx

4.下載應(yīng)用SPDY module patch

wget http://nginx.org/patches/spdy/patch.spdy.txt

patch -p1 < patch.spdy.txt

5.配置

./configure --with-http_ssl_module --with-http_spdy_module

6.編譯

Make

配置

server {

listen 443 ssl spdy default_server;

ssl_certificate server.crt;

ssl_certificate_key server.key;

...

}

下一步會(huì)主要學(xué)習(xí)SPDY草案的內(nèi)容,以及閱讀代碼。

原文鏈接:http://blog.csdn.net/liujiyong7/article/details/17953979

責(zé)任編輯:林琳 來源: 博客
相關(guān)推薦

2013-07-09 14:36:24

2015-09-29 14:01:45

SPDY網(wǎng)絡(luò)協(xié)議響應(yīng)頭網(wǎng)絡(luò)協(xié)議

2012-07-16 09:58:15

SPDY協(xié)議HTTP

2011-04-12 10:00:41

SPDYSPDY協(xié)議

2012-03-21 12:57:29

JavaJettyServlet

2013-06-26 13:25:43

IE11瀏覽器

2015-02-05 09:25:51

HTTPSSPDYHTTP2

2016-11-08 09:04:20

ChromeHTTP網(wǎng)站

2015-02-13 10:34:28

HTTP.2GoogleSPDY

2012-05-09 09:25:56

F5SPDY網(wǎng)關(guān)

2019-04-22 11:38:00

HTTPHTTP2.0HTTPS

2015-09-15 10:40:26

HTTP2 WEB 性能優(yōu)化

2012-05-03 15:14:38

Firefox 13Beta

2018-11-14 15:00:08

HTTP程序員前端

2020-08-26 07:50:01

HTTP 3網(wǎng)絡(luò)協(xié)議HTTP

2013-08-23 10:11:01

生成樹協(xié)議交換技術(shù)生成樹

2010-07-06 16:02:30

HART協(xié)議

2011-11-08 21:24:30

SNMP

2010-09-27 14:10:29

DNS協(xié)議簡介

2010-07-02 11:45:09

BitTorrent協(xié)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)