亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > 綜合 > 正文

高效管理http連接的方法

2024-07-21 02:03:02
字體:
來源:轉載
供稿:網友

1.Http連接基礎

Http協議承載了互聯網上的主要流量,然而說到傳輸,還要回歸到最基本的網絡分層模型TCP/IP。TCP/IP是全球計算機及網絡設備都在使用的一種常用的分組交互網絡分層協議集??蛻舳丝梢源蜷_一條TCP/IP連接,與世界上的任何服務器進行數據交換,并且交換的數據永遠不會丟失,受損或失序。

下面是常見的TCP/IP分層協議,分為安全與非安全版本。

由圖可知,HTTP的整個傳輸過程可以描述為“HTTP over TCP over IP”。TCP是可靠地傳輸協議,就好像一條管道,從TCP連接一段填入的字節會從另外一端以原有的順序,正確的傳送出來。

TCP層與IP層都有自己的協議,他們對數據的關注點不同??偟膩碚f,TCP段包含了目的端口與源端口,用來建立程序之間的連接。IP段包含了目的IP與源IP,用來進行網絡尋址,最終建立機器之間的連接。而一條TCP連接正是根據這四點唯一對應的:

<源IP地址,源端口號,目的IP地址,目的端口號>

不同的連接不可以擁有完全相同的四個屬性。對于一般功能而言,自己發起的連接中源端口號是隨機生成的。

2.http連接性能

由于http數據是通過TCP傳輸的,http連接的性能很大程度上取決于TCP通道的性能。我們先分析一個正常的http事務。

客戶端如果拿到的是域名,則需要先從DNS服務器中解析獲得服務器IP地址,這個過程稱為“DNS查詢”,需要花費一定的時間。

客戶端與服務器進行三次握手建立連接。

建立連接后,客戶端會發送有真正含義的請求報文。

服務器接收到請求后開始處理。

服務器處理完畢后,發送響應給客戶端。

客戶端收到響應后,與服務器進行四次揮手,斷開連接。

從上面的流程可以看出來,真正的有業務意義的階段是“請求-處理-響應”,其他階段時間消耗都是與業務無關的。因此可以從這上面思考如何優化TCP性能。

3.TCP連接性能聚焦

TCP連接的性能通常從下面5個方面考慮:

TCP建立握手

捎帶確認的TCP延遲確認算法

TCP慢啟動的擁塞控制

數據聚集的Nagle算法

TIME_WAIT時延與端口耗盡

3.1 TCP建立握手

從上面的圖中可以看出,一次正常的交互需要經過DNS查詢、握手、揮手等與數據傳輸無關的操作。如果每次傳輸的數據都很少,那么這種操作所占用的比例就會增加,這將大大降低HTTP的性能。由于HTTP是建立在TCP連接的基礎上的,所以握手的過程是對HTTP不可見的,HTTP只能看到建立連接發生了時延。三次握手的過程這里不做贅述,感興趣的請查閱相關資料。

三次握手簡單來說是建立連接前的三次交互來確認連接可以建立,有SYN,ACK+SYN,ACK三次報文通信。對于一些小的HTTP事務,比如握手后告知頁面304了,這種事務中在TCP建立上可能會法費一半甚至更多的時間。

解決方案:我們可以通過重用TCP連接來減少這種性能上的損失,比如持久連接。

3.2 延遲確認

因特網是無法保證數據可靠傳輸的,因為在網絡路由超負荷的情況下,允許丟棄任意網絡分組。所以,TCP實現了一套自己的確認機制來保障數據可靠傳輸。

每個TCP段都有一個序號和數據校驗和,接受者在接受完整之后會向發送者送回確認分組,這樣保證了這個分組的可靠傳輸。如果發送者在一定時間窗口內沒有接收到響應的確認分組,則認為這個分組已經丟失,對該分組進行重發。

由于確認報文很小,所以TCP允許在發往相同方向的數據分組中對其進行“捎帶”,就是這種捎帶出了問題。TCP將返回確認信息與輸出信息集合在一起,可以有效的利用網絡連接。因此為了找到相同方向的數據分組來進行捎帶,很多TCP棧實現了一種“延時確認”的算法。這種算法將確認信息放入緩沖區,在一定的時間窗口內(一般是100-200毫秒)找不到輸出分組,則對確認數據進行單獨發送。

如果請求響應并沒有較多的數據傳輸過程,則滿足捎帶確認的可能性就很低。通常,延遲確認算法會引入相當大的時延。

解決方案:根據操作系統的不容,可以調整或禁止延遲確認算法。

3.3 慢啟動與擁塞控制

TCP傳輸過程有慢啟動與擁塞控制的概念。

TCP在建立連接開始的時候,會進行慢啟動,數據窗口會逐漸指數變大,在達到閾值后會線性增長。當發生某次超時之后,會迅速減小窗口到最小,重新開始慢啟動,通知減小之前的閾值。

在這種機制的保障下,一個TCP連接是會進行自我調整的,因此一個新的連接的傳輸效率是不如老連接的。

解決方案:我們通過重用連接,可以使得傳輸效率提升,比如持久連接。

3.4 Nagle算法與TCP_NODELAY

Nagle算法與延時確認算法有些類似。不過Nagle算法關注的是發送方,為了保證不大量發送小的數據報文造成3.1的問題。該算法鼓勵每次發送大的數據組,如果數據分組不夠大,則放在緩存區等待與其他數據分組結合起來達到上限后一起發送,或者其他分組被確認后發送。

而對于一些小的數據分組而言,可能很多個也無法攢夠一次發送的數量。當這時接收端也采用延時確認算法之后,事情就變得恐怖了。對于發送端而言,很多小的數據分組沒有成功發送,因為第一個分組發送之后,服務端進行了延時確認200ms,在這段時間過去之后發送端的第二個分組才會被發送,這樣的排隊阻塞簡直是噩夢。

解決方案:可以在協議棧中設置TCP_NODELAY來禁用Nagle算法。

3.5 TIME_WAIT時延與端口耗盡

當一個TCP連接完成四次揮手關閉之后,會進入TIME_WAIT狀態,在等待2MSL之后會釋放該TCP連接。因為TCP的分組可能不是按照順序到達的,我們假設一個分組在網絡中最多存貨1MSL,則2MSL之后基本上就可以認為確實結束了。如果在2MSL之間服務端沒有接收到LAST_ACK發送的FIN對應的響應,則TIME_WAIT會再次發送ACK。

之前有說過,一個TCP可以通過下面四個屬性來確認。

<源IP地址,源端口號,目的IP地址,目的端口號>

而對于一個服務來說,之后源端口是不確定的,因為每次源端口都是隨機生成的。但是源端口是有數量限制的,比如60000個端口,MSL是60秒。則連接速率就被限制在60000/120=500次/秒。如果不進行相關的優化,操作系統就無法發起更多的連接。

解決方案:可以增加請求端機器,通過負載均衡的方法降低端口耗盡的可能性,或者在服務端使用幾個虛擬IP增加連接的組合。 

4 總結

HTTP建立在TCP的基礎上,如果我們在工作中發現HTTP建立連接的效率很低,可以考慮從上面的五個角度分析是否達到了相關的瓶頸,并通過推薦方案解決問題。

以上這篇高效管理http連接的方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
91精品综合久久久久久五月天| 国产999精品久久久影片官网| 国产精品高潮呻吟久久av黑人| 亚洲一区二区日本| 日韩av在线电影网| 91精品在线观看视频| 91免费观看网站| 久久深夜福利免费观看| 亚洲午夜色婷婷在线| 96精品久久久久中文字幕| 亚洲一区久久久| 5252色成人免费视频| 亚洲毛片在线免费观看| 国产精品成人在线| 日韩高清人体午夜| 亚洲午夜精品久久久久久性色| 一区二区三区视频免费在线观看| 综合欧美国产视频二区| 日韩精品久久久久久福利| 亚洲成人a**站| 欧美黑人视频一区| 亚洲欧美国产另类| 91干在线观看| 91香蕉电影院| 国产精品综合网站| 亚洲午夜国产成人av电影男同| 色婷婷av一区二区三区久久| 亚洲精品免费网站| 久久精品国产96久久久香蕉| 91免费电影网站| 欧美在线亚洲一区| 国产精品综合不卡av| 国产精品久久久久久久午夜| 欧美洲成人男女午夜视频| 久久久久久久久网站| 欧美三级欧美成人高清www| 日韩视频免费看| 欧美成人免费在线视频| 精品久久久久久久久久国产| 亚洲美腿欧美激情另类| 亚洲天堂2020| 在线视频亚洲欧美| 亚洲精品视频在线播放| 一区二区中文字幕| 亚洲精品资源美女情侣酒店| 欧美性猛交xxxx乱大交极品| 日韩成人在线视频网站| 亚洲欧美成人一区二区在线电影| 日韩亚洲在线观看| 亚洲一区二区三区香蕉| 欧美激情18p| 国产精品福利在线观看网址| 亚洲成人性视频| 国产亚洲视频中文字幕视频| 亚洲成年人影院在线| 欧美另类69精品久久久久9999| 精品久久久av| 66m—66摸成人免费视频| 色老头一区二区三区在线观看| 亚洲欧洲美洲在线综合| 97久久超碰福利国产精品…| 亚洲白拍色综合图区| 欧美亚洲视频一区二区| 欧美成人午夜剧场免费观看| 欧美性猛交xxxx偷拍洗澡| 国产一区二区三区毛片| 97成人精品区在线播放| 欧美黑人狂野猛交老妇| 亚洲欧美国产日韩天堂区| 亚洲成人黄色网址| 久久久免费观看视频| 亚洲免费视频一区二区| 成人欧美在线观看| 亚洲欧美日韩精品久久亚洲区| 国产视频精品免费播放| 综合国产在线视频| 97精品国产97久久久久久免费| 日韩欧美精品在线观看| 国产成人av网| 欧美成年人网站| 国产一区二区三区久久精品| 亚洲午夜未删减在线观看| 日韩在线中文视频| 欧美高清在线视频观看不卡| 日本高清视频一区| 亚洲国产精品人久久电影| 91牛牛免费视频| 中文字幕久久久| 国产亚洲人成网站在线观看| 久久伊人91精品综合网站| 国产一区二区视频在线观看| 色噜噜久久综合伊人一本| 色偷偷av一区二区三区| 久久久精品影院| 久久天堂电影网| 亚洲在线一区二区| 性色av香蕉一区二区| 亚洲欧美日本另类| 久久久久久久久久久免费精品| 日韩av片永久免费网站| 日韩欧美在线字幕| 亚洲第一页自拍| 国产精品美女主播| 中文字幕欧美在线| 欧美一级免费视频| 国产精品视频xxxx| 欧美激情亚洲一区| 国产精品自拍小视频| 欧美性极品xxxx娇小| 国产精品一区二区久久久| 色偷偷噜噜噜亚洲男人的天堂| 亚洲最大的成人网| 欧美电影免费观看| 国产在线视频不卡| 成人h片在线播放免费网站| 亚洲精品视频网上网址在线观看| 欧美福利在线观看| 国产精品女视频| 久久五月天色综合| 亚洲深夜福利在线| 国产精品你懂得| 亚洲精品大尺度| 精品国内产的精品视频在线观看| 国产69精品久久久久久| 国产精品久久久久久久久久久不卡| 久久频这里精品99香蕉| 欧美黄色片免费观看| 欧美在线性爱视频| 日本国产欧美一区二区三区| 在线观看精品自拍私拍| 欧美日韩美女视频| 国产亚洲精品综合一区91| 亚洲永久在线观看| 色视频www在线播放国产成人| www.日韩视频| 国产成人精品亚洲精品| 在线看片第一页欧美| 精品亚洲va在线va天堂资源站| 国产精品女主播视频| 92看片淫黄大片欧美看国产片| 九九精品在线视频| 精品久久久久久久久久国产| 亚洲人成电影网站| 亚洲色图欧美制服丝袜另类第一页| 播播国产欧美激情| 亚洲欧美福利视频| 色无极亚洲影院| 欧美一级大片在线观看| 日韩在线欧美在线国产在线| 国产精品久久久久久久久久| 91在线|亚洲| 欧美黑人一级爽快片淫片高清| 久久综合久中文字幕青草| 欧美壮男野外gaytube| 亚洲深夜福利在线| 日韩在线小视频| 国产精品久久久久高潮| 亚洲国产日韩欧美在线动漫| 国产成人拍精品视频午夜网站| 国产精品99久久99久久久二8| 中文字幕亚洲色图| 色久欧美在线视频观看| xxxx性欧美| 亚洲欧美日韩国产中文|