BigPipe目標:先後端分離,提升頁面渲染速度後端
BigPipe解決的問題:
一、下載堵塞
二、服務端下載浪費瀏覽器
通常的網頁加載是直接經過訪問服務器,發送請求,收到返回數據,而後渲染服務器
通常堵塞模型:
後端渲染頁面→網絡延遲→瀏覽器端頁面渲染,全部的數據一次性渲染網絡
BigPipe思路,分塊加載,一次請求,屢次返回
一、瀏覽器發送一次請求;
二、服務端收到請求後,開始處理請求;
三、服務器端按預先寫好的控制流程,開始分塊渲染HTML;
四、若是渲染完了向瀏覽器端發送數據;
五、瀏覽器端收到分塊數據後開始渲染前後端分離
BigPipe堵塞模型(相似於CPU分級流水)code
pagelet 1 | 服務器端計算 網絡傳輸 瀏覽器渲染 | pagelet 2 | 服務器端計算 網絡傳輸 瀏覽器渲染 | pagelet 3 | 服務器端計算 網絡傳輸 瀏覽器渲染 _____________|________________________________________________________________ 分級傳輸極大提升了首頁渲染效率
2、BigPipe VS Ajax
BigPipe: 一、發送一個請求後屢次返回數據
二、瀏覽器和服務器工做並行執行
三、只有一個請求,對服務器壓力少
AJAX: 一、發送一個請求後只返回一次數據
二、瀏覽器和服務器工做順序執行
三、有多個請求,對服務器壓力大ip