靜態資源緩存常用的方式


   最近遇到項目優化的問題,由於項目用到的框架,函數庫比較多,導致首次需要加載3.6M的文件,那么問題來了,當網絡很差的時候,很多文件就會timeout.然后就掛了。所以就開始用到離線緩存,一些文件靜態的函數庫開始緩存起來,一些經常更新的文件每次上線加版本號更新。

 

下面說說離線緩存,長話短說,很簡單,只要完成簡單的幾個步驟

1,創建一個后綴名為.appcache的文件(如:list.appcache),里面配置項也很簡單,同上

    CACHE MANIFEST:這里面把你需要緩存的文件列出來,注意路徑哈。

    NETWORK:指定只有通過聯網才能瀏覽的文件.一般寫通配符 * 號(*代表除了在CACHE中的文件)

  FALLBACK: 當上面文件嘗試加載失敗時,轉換成下面列出的備用條目。

2.把list.appcache添加到頁面中得HTML中

<html lang="zh-cn" manifest="/list.appcache" type="text/cache-manifest">

3.我們可以通過調試器看 或者 chrome://appcache-internals/  可以訪問

 

 

小結:

      離線訪問對基於網絡的應用而言越來越重要。雖然所有瀏覽器都有緩存機制,但它們並不可靠,也不一定總能起到預期的作用。HTML5 使用ApplicationCache 接口解決了由離線帶來的部分難題。前提是你需要訪問的web頁面至少被在線訪問過一次。

      使用離線加載有幾大優勢,首先可以在沒有網絡的情況下訪問緩存的資源,第二,可以加快網頁加載速度。

      此外, 如果報錯,首先檢測訪問文件地址是否正確(大部分是這個原因導致),還有就是需要服務器支持,比如tomcat需要修改config文件(nginx我試過,是可以識別,不用額外修改)

<mime-mapping>  
       <extension>manifest</extension>  
       <mime-type>text/cache-manifest</mime-type>  
</mime-mapping>  

  

  今天就暫時寫到這里了

    

  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM