第一步:網域名稱解析,將網域名稱解析成對應ip。
按先後順序檢視
1.瀏覽器快取。
2.本機的host檔案。(linux:/etc/hosts)
3.路由器快取。
4.本地dns伺服器,遞迴查詢對應ip。[本地網域名稱伺服器就以dns客戶的身份,向其他根網域名稱伺服器繼續發出查詢請求報文,而不是讓該主機自己進行下一步查詢。]
第二步:通過3次握手,建立tcp連線。
第三步:通過http協議傳送請求。
第四步:伺服器接收請求,並處理,請處理結果即響應傳送給瀏覽器。
nginx 裡的工作程序等於cpu核數。
驚群就是多個程序或者執行緒在等待同乙個事件,當事件發生時,所有執行緒和程序都會被核心喚醒,而只有乙個程序獲得了該事件並處理,其他程序發現獲取事件失敗後又繼續進入了等待狀態,在一定程度上降低了系統效能。
nginx解決驚群方案:利用程序鎖,變多程序同時監聽為單程序輪流監聽。
nginx與php的兩種通訊方式-unix socket和tcp socket
unix socket通訊方式nginx配置nginx.conf,需要在nginx配置檔案中填寫php-fpm執行的pid檔案位址。
location ~ \.php$tcp socket通訊方式nginx配置nginx.conf,需要在nginx配置檔案中填寫php-fpm執行的ip位址和埠號。
第五步:通過四次揮手,釋放tcp連線。
第6步:瀏覽器對接收到的資料,進行渲染和呈現。
瀏覽器從輸入url到顯示html頁面經歷了什麼
在瀏覽器輸入url之後,瀏覽器首先會判斷在位址列中輸入的資訊到底是url還是關鍵字 如果是關鍵字,那麼瀏覽器會使用預設的搜尋引擎搜尋關鍵字,這和直接訪問url的請求 響應過程一致,如果是url,那麼瀏覽器則會準備開始進行下一步 判斷時候訪問dns dns 網域名稱伺服器 瀏覽器在之前url的基礎上判...
瀏覽器輸入url 到返回頁面全流程
使用者從輸入 url 到瀏覽器響應,呈現給使用者的具體過程 1 使用者在輸入欄輸入位址 1 如果有 beforeunload 事件會先執行判斷繼續還是跳出操作 2 瀏覽器程序識別是 位址還是關鍵字檢索 3 將正確的 url 位址傳送給網路程序 2 網路程序檢視有沒有快取 1 有快取直接返回資料 2 ...
輸入URL至瀏覽器顯示頁面
輸入 根據url找ip 先檢視本地hosts檔案 再檢視本地dns和快取 遞迴,若沒有本地dns向根dns查詢 根dns 遞迴,沒有去去本地dns去域伺服器查詢 返回ip,把對應關係加入快取 建立tcp鏈結,3次握手 瀏覽器向web伺服器傳送http請求 起始行,請求頭,請求主體 起始行包括url,...