從點擊 URL 開始到頁面呈現(xiàn),中間經歷的什么樣的過程
DNS 解析 news.qq.com -> 125.39.52.26
-
建立 TCP 連接 (全雙工)
- client -> SYN -> server
- client <- ACK + SYN <- server
- client -> ACK -> server
構造 “HTTP 請求報文”
發(fā)送數(shù)據
-
HTTP Server 接收數(shù)據報文
- 負責建立捌省、斷開網絡連接
- 負責接收苫纤、發(fā)送數(shù)據
- 只負責跟網絡有關的處理
WSGI 將請求報文封裝成 HTTP Request 對象
-----------------------------------------------------------------> process_requestURL 映射找到 View 函數(shù)
-----------------------------------------------------------------> process_view-
執(zhí)行 View
- 解析參數(shù)
- 邏輯處理 (從數(shù)據庫、緩存取出數(shù)據纲缓,進行各種邏輯運算)
- 將得到的結果進行 “模版渲染”
-------------------------------------------------------------> process_template - 返回一個 HTTP Response
-----------------------------------------------------------------> process_exception
-----------------------------------------------------------------> process_response
WSGI 將 Response 對象轉換成一個 “HTTP 響應報文”
HTTP Server 將報文發(fā)送到瀏覽器
瀏覽器接收數(shù)據
客戶端斷開連接
解析卷拘、渲染
頁面呈現(xiàn)
WSGI: Web Server Gateway Interface
uWSGI: 一個服務器軟件,內部實現(xiàn)了 WSGI 接口