<del id="k5ejx"></del><label id="k5ejx"><noframes id="k5ejx">

<strike id="k5ejx"></strike>

<button id="k5ejx"><xmp id="k5ejx">

<label id="k5ejx"><div id="k5ejx"></div></label>
<label id="k5ejx"><div id="k5ejx"></div></label>

<strike id="k5ejx"><dfn id="k5ejx"></dfn></strike>

<delect id="k5ejx"><div id="k5ejx"></div></delect><label id="k5ejx"><div id="k5ejx"><del id="k5ejx"></del></div></label>

<button id="k5ejx"><xmp id="k5ejx">

<p id="k5ejx"></p>

<button id="k5ejx"><dfn id="k5ejx"></dfn></button>

<delect id="k5ejx"><div id="k5ejx"></div></delect>

<label id="k5ejx"><div id="k5ejx"><del id="k5ejx"></del></div></label>

<label id="k5ejx"><div id="k5ejx"></div></label>
<option id="k5ejx"></option>

將想法與焦點和您一起共享

如何改造動態系統 ?發布者:本站     時間:2019-08-06 10:08:00

   如何把動態頁面改造成適合緩存的靜態頁面呢?就是通過前面提及的去除影響因素的方法,即通過動靜分離把這些因素獨立出來。下面以詳情系統(Detail)為例介紹如何做動靜分離。


UrL唯一一化。詳情系統天然地就可以做到URL統一化,如每個商品都用ID標識,那么h:/:itm.toa com/itm.htm?d-=xxx就可以作為唯一-的 URL標識。
 
分離瀏覽者相關的因素。瀏覽者相關的因素包括是否登錄以及登錄身份等信息,我們可以把它們單獨拆分出來,通過動態請求來獲取。分離時間因素。通過動態請求獲取服務端輸出的時間。
 
異步化地域因素。以異步方式獲取詳情系統上與地域相關的信息。
 
去掉Cookie??梢酝ㄟ^代碼軟件刪除服務端輸出頁面中包含的Cookie,如可以通過unset req.http.cookie命令去掉Varnish中的Cookie.
 
分離出動態內容以后,如何組織這些內容也是非常關鍵的,因為頁面中其他模塊會用到這些動態內容(比如判斷該用戶是否登錄等)。通過把這些信息JSON化,前端可以很方便地獲取它們。
 
知道了分離哪些內容,又知道怎么組織它們,現在的問題就是如何獲取它們并把它們和靜態文件組裝在一起。我們可以通過兩種方式獲取動態內容: ESI (Edge Side Includes)和CSI ( Client Side Includes )。
 
ESI。即在Web代理服務器上做動態內容請求,并將請求插人靜態頁面中,當用戶拿到頁面時已經是一個完整的頁面。如現在的詳情系統就是采用這種方式。這種方式對服務端性能有些影響,但是用戶體驗較好。
 
CSI。即發起一個異步JS請求,單獨向網站制作服務端獲取動態內容。這種方式下的服務端性能更佳,但是用戶端頁面略有延時,體驗稍差。         


多人做人爱的视频高清