PHP請求全過程

php請求的全過程:

網(wǎng)頁調(diào)用請求:

1.dns域名解析:

1.1 本地域名解析(未找到則走1.2)

1.2 遠程dns域名解析

2.三次握手協(xié)議:

客戶端發(fā)起連接請求,服務器接收后返回應答告訴客戶端接收到了請求嗤形,客戶端接收到應答請求后返回確認接收應答請求,連接建立弧圆。

(ps:為啥是三次握手而不是兩次赋兵? 三次握手的本質是客戶端和服務器端相互確認對方開始通信的序列號笔咽,兩次握手只能確定客戶端的初始序列號而沒有對服務器端的序列號進行確認,這樣會導致服務器端無法知道接收到的請求連接是否是正確的或者是延遲的霹期,導致服務器端面對一個錯誤的請求也要正常執(zhí)行產(chǎn)生問題叶组。

因為序列號沒有綁定到整個網(wǎng)絡的全局時鐘,所以無法確認請求中的序列號是否正確历造。所以需要三次握手讓雙方確認對方的序列號)

(ps:為啥不是四次握手甩十?

三次握手之后的握手雙方都確定了對方的序列號,確保了通信的可靠性吭产,不需要在進行握手來確定)

rfc793協(xié)議: 當兩個進程需要通信的時候侣监,他們的TCPs必須首先建立一個連接(在每一端初始化狀態(tài)信息)。當通信完成的時候臣淤,連接終止或者關閉以釋放資源用于其它用途。由于連接必須在不可靠的主機和不可靠的internet通信系統(tǒng)上建立姓蜂,一個帶有基于時鐘的系列號的握手機制被用來避免連接的錯誤初始化钱慢。三次握手的基本原則是防止老的重復連接發(fā)起導致的混亂

TCP 需要 seq 序列號來做可靠重傳或接收,而避免連接復用時無法分辨出 seq 是延遲或者是舊鏈接的 seq麦箍,因此需要三次握手來約定確定雙方的 ISN(初始 seq 序列號)

3.請求到達web服務器(以nginx為例)挟裂,nginx識別請求是php請求诀蓉,根據(jù)nginx配置文件中配置php處理路徑將請求轉發(fā)給fastcgi進行管理器進行php請求解析。(php-fpm是fastcgi協(xié)議的實現(xiàn)添吗,并添加了進程管理的功能僵腺。fastcgi是cgi協(xié)議的優(yōu)化版辰如,解決了每次請求都要初始化進程導致的效率低下琉兜。 cgi協(xié)議是客戶端與服務器端進行通信用來規(guī)范雙方通信傳輸中數(shù)據(jù)類型和數(shù)據(jù)結構的協(xié)議。nginx服務器就是以這個協(xié)議來和php解析器進行通信)

4.PHP解析器解析PHP文件并執(zhí)行梧疲,執(zhí)行后將數(shù)據(jù)返回給web服務器擂找,服務器在將數(shù)據(jù)回傳給客戶端贯涎。

5.請求結束陆盘,執(zhí)行四次揮手協(xié)議斷開鏈接。(四次揮手:客戶端發(fā)起fin報文斷開鏈接請求妻顶,服務器收到請求并不會立即斷開請求幔嗦,因為服務器可能還有未回傳數(shù)據(jù)在處理邀泉,服務器會回傳一個ack報文確認收到客戶端請求庞钢,客戶端接收后不再傳數(shù)據(jù)給服務器并等待服務器發(fā)送fin報文斷開鏈接焊夸。當服務器端處理完后向客戶端發(fā)起fin報文結束請求阱穗,客戶端接收后回傳ack報文,此時雙方斷開請求)(ps:為啥是四次揮手鲁僚?因為客戶端發(fā)起斷開請求,服務器可能還沒有將數(shù)據(jù)全部回傳給客戶端拓挥,這時返回一個確認報文告訴客戶端可以斷開客戶端到服務器端的數(shù)據(jù)傳輸侥啤,當服務器處理完后再發(fā)送fin請求告訴客戶端已經(jīng)處理完數(shù)據(jù)可以斷開鏈接,客戶端收到后返回一個確認報文給服務器赁炎,這時雙方都知道對方不會再傳輸數(shù)據(jù)于是斷開鏈接)

?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末垮庐,一起剝皮案震驚了整個濱河市逗抑,隨后出現(xiàn)的幾起案子荧关,更是在濱河造成了極大的恐慌,老刑警劉巖仙辟,帶你破解...
    沈念sama閱讀 218,284評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件未檩,死亡現(xiàn)場離奇詭異冤狡,居然都是意外死亡,警方通過查閱死者的電腦和手機合瓢,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,115評論 3 395
  • 文/潘曉璐 我一進店門掷匠,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事才菠。” “怎么了渠牲?”我有些...
    開封第一講書人閱讀 164,614評論 0 354
  • 文/不壞的土叔 我叫張陵鼎兽,是天一觀的道長。 經(jīng)常有香客問我睁壁,道長潘明,這世上最難降的妖魔是什么腌巾? 我笑而不...
    開封第一講書人閱讀 58,671評論 1 293
  • 正文 為了忘掉前任灯荧,我火速辦了婚禮哆窿,結果婚禮上挚躯,老公的妹妹穿的比我還像新娘码荔。我一直安慰自己锯七,他們只是感情好誉己,可當我...
    茶點故事閱讀 67,699評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著袱蜡,像睡著了一般敏晤。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上蔬墩,一...
    開封第一講書人閱讀 51,562評論 1 305
  • 那天,我揣著相機與錄音哥谷,去河邊找鬼们妥。 笑死监婶,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的短纵。 我是一名探鬼主播报破,決...
    沈念sama閱讀 40,309評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼盹靴,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起爆价,我...
    開封第一講書人閱讀 39,223評論 0 276
  • 序言:老撾萬榮一對情侶失蹤铭段,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后秦爆,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體序愚,經(jīng)...
    沈念sama閱讀 45,668評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,859評論 3 336
  • 正文 我和宋清朗相戀三年等限,在試婚紗的時候發(fā)現(xiàn)自己被綠了爸吮。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片芬膝。...
    茶點故事閱讀 39,981評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖形娇,靈堂內(nèi)的尸體忽然破棺而出锰霜,到底是詐尸還是另有隱情,我是刑警寧澤桐早,帶...
    沈念sama閱讀 35,705評論 5 347
  • 正文 年R本政府宣布锈遥,位于F島的核電站,受9級特大地震影響勘畔,放射性物質發(fā)生泄漏所灸。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,310評論 3 330
  • 文/蒙蒙 一炫七、第九天 我趴在偏房一處隱蔽的房頂上張望爬立。 院中可真熱鬧,春花似錦万哪、人聲如沸侠驯。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,904評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽吟策。三九已至,卻和暖如春的止,著一層夾襖步出監(jiān)牢的瞬間檩坚,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,023評論 1 270
  • 我被黑心中介騙來泰國打工诅福, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留匾委,地道東北人。 一個月前我還...
    沈念sama閱讀 48,146評論 3 370
  • 正文 我出身青樓氓润,卻偏偏與公主長得像赂乐,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子咖气,可洞房花燭夜當晚...
    茶點故事閱讀 44,933評論 2 355