日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

优化JS加载时间过长的一种思路

發布時間:2025/5/22 javascript 20 豆豆
生活随笔 收集整理的這篇文章主要介紹了 优化JS加载时间过长的一种思路 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章版權由作者李曉暉和博客園共有,若轉載請于明顯處標明出處:http://www.cnblogs.com/naaoveGIS/。

1.背景

去年公司在漳州的一個項目中,現場工程人員反映地圖部分出圖有點緩慢,大約需要20多秒。和另外一個同事一起花了一兩天進行了代碼優化、代碼壓縮、中間件優化以及服務部署優化后使地圖出圖縮短到了9秒上下。

這里對上次的經驗做一個總結,提供一種優化JS文件加載時間過長的思路。這里的中間件使用的是tomcat6.0。

2.代碼優化

2.1代碼模塊化

代碼重構,使代碼模塊化。利用require.js,實現代碼按需加載。

2.2框架精簡

去掉不必要的框架,或者將框架中涉及到的部分提取出來,去掉不用的部分。比如漳州項目中,用了公司的傳統框架YUI,但是界面部分是用Jquery編寫。YUI框架僅僅利用了其事件機制。這里我們將YUI的事件機制進行提取,封裝成一個單獨的類后,其余部分全部舍去。

3.代碼打包壓縮

對代碼模塊化后的一個很大的好處就是方便代碼打包,避免出現公共變量名沖突等問題。這里使用ant對JS文件進行壓縮合并打包。

? ? ? ? ? ? ? ? ? ? ? ?

壓縮時要注意各模塊之間的依賴關系。將被依賴模塊放在依賴模塊的前面。

4.中間件壓縮優化

中間件環節壓縮的原理是:在客戶端請求網頁后,從服務器端將網頁文件壓縮,再下載到客戶端,由客戶端的瀏覽器負責解壓縮并瀏覽。相對于普通的瀏覽過程HTML ,CSS,Javascript , Text?,它可以節省40%左右的流量。更為重要的是,它可以對動態生成的,包括CGI、PHP , JSP , ASP , Servlet,SHTML等輸出的網頁也能進行壓縮,壓縮效率驚人。

Tomcat5.0以后的版本是支持對輸出內容進行壓縮的,使用的是gzip壓縮格式。

在server.xml文件中增加配置方式如下:

?

5.服務部署優化

當訪問后臺請求增多時,JS加載也會變慢,優化服務的部署能起到一定的作用。

5.1中間件線程池優化

在server.xml文件中合理增加中間件線程池的數目:

?

5.2中間件內存的優化

?在catalina.bat文件中合理增加中間件的內存:

?

5.3合理部署服務

漳州項目中的GIS服務和多個其他服務部署在同一個中間件下。由于GIS服務的訪問量遠大于其他項目服務。在訪問量驟升時會對其他服務造成一定的卡頓。

解決方案是對GIS項目在服務器上單獨發布。

有博友給出一個建議:把動態請求和靜態請求分離,單獨部署靜態文件服務器。此方法個人覺得很好。

5.4合理集群

設置多個服務節點,進行服務的負載均衡配置。

?????????????????????????????????????????????????????     ?-----歡迎轉載,但保留版權,請于明顯處標明出處:http://www.cnblogs.com/naaoveGIS/

?????????????????????????????????????????????????????????????????????????? 如果您覺得本文確實幫助了您,可以微信掃一掃,進行小額的打賞和鼓勵,謝謝 ^_^

                                        

轉載于:https://www.cnblogs.com/naaoveGIS/p/4500406.html

總結

以上是生活随笔為你收集整理的优化JS加载时间过长的一种思路的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。