HTTP協(xié)議回顧

因為Tomcat 本身就是一個“HTTP 服務器 + Servlet容器”悍缠,所以這一節(jié)先對HTTP工作原理進行一下回顧。

HTTP的本質

HTTP協(xié)議是瀏覽器和服務器之間的數據傳輸協(xié)議飞蚓,主要規(guī)定了客戶端和服務器之間的通信格式。

當瀏覽器需要從服務器上獲取信息的時候溅漾,實際上經歷了兩個過程:

  • 與服務器簡歷socket鏈接
  • 生成請求數據并通過socket鏈接發(fā)送過去
    HTTP協(xié)議其實就是在瀏覽器和服務器之間約定好通信格式的著榴。這樣服務器就可以通過約定好的格式來分析出瀏覽器想要獲取數據還是上傳數據。傳過來的數據格式是什么樣的兄渺。

HTTP 工作原理

image.png
  • 用戶通過瀏覽器發(fā)送一個請求挂谍,瀏覽器獲取了這個事件
  • 瀏覽器通過TCP協(xié)議向服務器發(fā)送請求
  • 服務器接受請求,通過TCP三次握手建立連接
  • 瀏覽器將請求數據打包成HTTP協(xié)議個數的數據包
  • 服務器程序拿到數據包口叙,同樣使用HTTP協(xié)議解析數據包,獲得客戶端的意圖
  • 服務器執(zhí)行相關代碼俺亮,得到結果
  • 服務器將相應數據推入網絡疟呐,數據包通過網絡傳輸最終到達瀏覽器
  • 瀏覽器拿到數據包通過HTTP協(xié)議解析包,然后解析數據(展示或者...)

我們主要考慮Tomcat 在這個過程中作為一個HTTP服務器都做了什么事情启具?主要就是接受連接、解析請求數據拷沸、處理請求和發(fā)送響應數據這四個部分薯演。Tomcat 為了提高服務能力和并發(fā)能力,在這幾個步驟中往往都是并行執(zhí)行的跨扮,具體實現方式就是使用了線程池技術。
在服務器接受請求時愉镰,Tomcat 會把HTTP請求數據字節(jié)流解析成一個Request對象钧汹,這個Request對象封裝了HTTP請求的所有信息。Tomcat把這個Request對象傳遞給Web應用去進行業(yè)務處理拔莱,處理完成后得到一個Response對象,Tomcat會把Response對象轉化成HTTP格式的響應數據并發(fā)送給瀏覽器讼渊。

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末尊剔,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子挨稿,更是在濱河造成了極大的恐慌,老刑警劉巖奶甘,帶你破解...
    沈念sama閱讀 212,884評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件臭家,死亡現場離奇詭異疲陕,居然都是意外死亡钉赁,警方通過查閱死者的電腦和手機,發(fā)現死者居然都...
    沈念sama閱讀 90,755評論 3 385
  • 文/潘曉璐 我一進店門窃爷,熙熙樓的掌柜王于貴愁眉苦臉地迎上來姓蜂,“玉大人,你說我怎么就攤上這事逮京∈” “怎么了?”我有些...
    開封第一講書人閱讀 158,369評論 0 348
  • 文/不壞的土叔 我叫張陵策严,是天一觀的道長饿敲。 經常有香客問我,道長怀各,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,799評論 1 285
  • 正文 為了忘掉前任寿酌,我火速辦了婚禮硕蛹,結果婚禮上硕并,老公的妹妹穿的比我還像新娘僵腺。我一直安慰自己,他們只是感情好辰如,可當我...
    茶點故事閱讀 65,910評論 6 386
  • 文/花漫 我一把揭開白布琉兜。 她就那樣靜靜地躺著毙玻,像睡著了一般豌蟋。 火紅的嫁衣襯著肌膚如雪桑滩。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 50,096評論 1 291
  • 那天幌氮,我揣著相機與錄音胁澳,去河邊找鬼。 笑死宇智,一個胖子當著我的面吹牛胰丁,可吹牛的內容都是我干的随橘。 我是一名探鬼主播锦庸,決...
    沈念sama閱讀 39,159評論 3 411
  • 文/蒼蘭香墨 我猛地睜開眼酸员,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了幔嗦?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 37,917評論 0 268
  • 序言:老撾萬榮一對情侶失蹤嬉挡,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后拔恰,有當地人在樹林里發(fā)現了一具尸體,經...
    沈念sama閱讀 44,360評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡颜懊,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 36,673評論 2 327
  • 正文 我和宋清朗相戀三年河爹,在試婚紗的時候發(fā)現自己被綠了桐款。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,814評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡媳维,死狀恐怖遏暴,靈堂內的尸體忽然破棺而出侄刽,到底是詐尸還是另有隱情拓挥,我是刑警寧澤,帶...
    沈念sama閱讀 34,509評論 4 334
  • 正文 年R本政府宣布当叭,位于F島的核電站盖灸,受9級特大地震影響,放射性物質發(fā)生泄漏赁炎。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 40,156評論 3 317
  • 文/蒙蒙 一讥裤、第九天 我趴在偏房一處隱蔽的房頂上張望姻报。 院中可真熱鬧,春花似錦吴旋、人聲如沸厢破。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,882評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽见坑。三九已至捏检,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間未檩,已是汗流浹背粟焊。 一陣腳步聲響...
    開封第一講書人閱讀 32,123評論 1 267
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留悲雳,地道東北人香追。 一個月前我還...
    沈念sama閱讀 46,641評論 2 362
  • 正文 我出身青樓,卻偏偏與公主長得像透典,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子税弃,可洞房花燭夜當晚...
    茶點故事閱讀 43,728評論 2 351

推薦閱讀更多精彩內容

  • http協(xié)議有http0.9凑队,http1.0,http1.1和http2三個版本西壮,但是現在瀏覽器使用的是htt...
    一現_閱讀 1,858評論 0 3
  • HTTP協(xié)議 之前說了HTTP協(xié)議叫惊,HTTP協(xié)議包括4個部分,格式為: 一般有3個部分赋访,有時候有4個部分缓待,登陸賬號...
    lapalanD閱讀 447評論 0 0
  • 深入淺出HTTP協(xié)議(WEB開發(fā)和面試必備) 1.基礎概念篇 a.簡介 HTTP是Hyper Text Trans...
    半世韶華憶闌珊閱讀 1,217評論 0 7
  • 本文整理自MIN飛翔博客 [1] 1. 概念 協(xié)議是指計算機通信網絡中兩臺計算機之間進行通信所必須共同遵守的規(guī)定或...
    HoyaWhite閱讀 2,665評論 2 20
  • 文|沙揚娜拉 年復一年旋炒,又是新年签杈,今年你回家和家人一起過年了嗎 ? 每年我最期待的就是這個假期了答姥,一來放假時間相對...
    房小璇閱讀 475評論 4 5