999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

全方位提速網站的技術手段

2017-03-08 03:11:02邱麗娟
中國新通信 2017年1期
關鍵詞:資源

邱麗娟

【摘要】 平時我們搭建的一個網站,特別是較大的企業網站,都希望客戶訪問時能更快地響應。本文將從全方位的四個層次來討論怎樣提速網站。

【關鍵字】 網站提速 域名規劃 代理緩存 前端編譯 域名預解析 網站預連接 資源預加載

一般網站的技術架構:通過負載均衡設備接入外網請求,執行SSL解密,根據域名或URL分發請求;以Nginx為負載分發服務器;靜態資源與動態程序分開部署。

順應這一架構層次,本文從域名規劃、代理服務器端緩存、前端編譯、頁面制作四個層次闡述網站提速的技術手段。

一、域名規劃

瀏覽器有一個限制:針對一個遠程主機(域名),同時存在的并發請求數不能超出上限。換言之,將文件部署在不同的服務器(域名)上,將增強瀏覽器的并發能力。

以電商網站為例,規劃其域名:

www:網站首頁。

news:二級頁面。

app:移動App的服務端地址。

weixin:微信公眾號的服務端地址。

pdt-img-1:商品圖片服務器。為充分利用瀏覽器并發獲取圖片的能力,建立5個圖片服務器域名,即pdtimg-2、pdt-img-3、pdt-img-4、pdt-img-5。

二、 代理緩存

當使用Nginx作為Web請求和移動App請求的負載分發器時,在Nginx上配置代理緩存策略,定義負載分發器與應用服務器/靜態資源服務器之間的緩存規則,這樣在緩存過期之前負載分發器就不用從應用服務器/靜態資源服務器獲取文件。

proxy_cache_path data/cache/cache_my levels=1:2 keys_ zone=cache_my:200m inactive=1d max_size=1g;

server {

location ~* \.(?:ico|css|js|gif|jpe?g|png)$ {

include proxy.conf;

proxy_cache cache_my;

proxy_pass http://my_servers;

}

}

當新應用發布時,要注意清除緩存目錄。

三、動靜分離/瀏覽器緩存/文件壓縮/圖片合并

減少靜態文件對應用服務器的影響、請求次數、網絡流量、連接次數,這些是前端開發的標準要求和強制要求。如果拿服務端代碼編譯來類比,就相當于對前端開發的成果文件(包括HTML、CSS、JS、圖片等)進行一次檢查和再處理,這正是“前端編譯”的觀點。FIS3是百度的前端編譯解決方案,可一次性達到上述四個目的。FIS3的統一配置文件是fis-conf.js。

3.1 實施動靜分離

在一個高并發的場景中,瀏覽器并發獲取資源,無疑將加速頁面的顯示,增強用戶體驗,但這又對服務器應對并發訪問的能力提出更高要求。根據文件類型,在服務端針對動、靜文件實施分開部署,動態文件部署在應用服務器,靜態文件部署在靜態資源服務器,正是為了降低應用服務器在I/O方面的消耗,從整體上增強服務端響應文件請求的能力。大型網站部署CDN的目的之一,便是分散部署靜態資源文件,結合智能DNS,就近返回靜態資源文件。

在fis-conf.js中配置規則,將*.js、*.css、*.png文件發布到另一個絕對路徑下,該路徑將來可以是靜態資源服務器上的任意路徑。

fis.match(‘*.{png,js,css}, {

release: ‘/static/$0

});

3.2 充分利用瀏覽器緩存

瀏覽器緩存的工作原理是,與服務器之間建立一種契約,服務器依據文件修改時間來決定是否需要向瀏覽器返回該文件。瀏覽器每次請求遠程文件時,從自身緩存中提取該文件的最后修改時間,放在If-Modified-Since頭中隨請求發出;服務器取出If-Modified-Since頭數據,比對最新的文件修改時間,如相同,說明文件未曾修改,返回304狀態代碼,如不同,則正常返回文件。在這種工作模式下,即使文件沒修改,瀏覽器也要發出一次請求。改進方案是,服務器告知瀏覽器文件將永不過期,服務器將能夠代表文件是否變動的標識(最后修改時間、內容哈希)作為文件URI的一部分,一旦文件內容改變,URI隨之變化,這樣瀏覽器根據文件URI便能判斷是否需要下載新的文件。

應用系統的靜態資源文件、商品圖片,均適用這一技巧。

fis.match(‘*.{js,css,png}, {

useHash: true

});

3.3 實施文件壓縮

文件GZIP壓縮是主流的Web服務器都支持的功能,其目的是減少網絡傳輸的字節數,因為相對壓縮和解壓的運算能力的消耗,網絡傳輸能力無疑是更大的制約。

fis.match(‘*.js, {//fis-optimizer-uglify-js插件進行壓縮,已內置

optimizer: fis.plugin(‘uglify-js)

});

fis.match(‘*.css, {//fis-optimizer-clean-css插件進行壓縮,已內置

optimizer: fis.plugin(‘clean-css)

});

fis.match(‘*.png, {//fis-optimizer-png-compressor插件進行壓縮,已內置

optimizer: fis.plugin(‘png-compressor)

});

3.4 實施圖片合并

一次Web請求,需要經歷域名解析、建立連接、傳輸內容三個階段,其中建立連接比較耗時,因此瀏覽器一般具有保持一段時間的長連接以供復用的機制。服務端將多張圖片合并成一個文件,正是一種主動減少連接次數的機制。

//啟用fis-spriter-csssprites插件

fis.match(‘::package, {

spriter: fis.plugin(‘csssprites)

})

//對CSS進行圖片合并

fis.match(‘*.css, {//給匹配到的文件分配屬性

useSprite: true

});

四、域名預解析/網站預連接/資源預加載

根據大型網站的監測結果,在一次資源請求的過程中,大量時間耗費在建立連接方面;對于初次請求一個新網站來說,域名解析也需要耗費一段時間;對于一次請求大文件的過程來說,需要耗費的時間相對更長,而在這段相對更長的時間內,用戶只能等待。針對域名解析、建立連接、資源文件加載這三個問題,分別開辟一個提前量,在用戶執行其它操作的間歇期,并行執行域名預解析、網站預連接、資源預加載。例如:

域名預解析:

網站預連接:

資源預加載:

目前并不是所有的瀏覽器都支持以上聲明,但是將有越來越多的瀏覽器支持。

猜你喜歡
資源
讓有限的“資源”更有效
污水磷資源回收
基礎教育資源展示
崛起·一場青銅資源掠奪戰
藝術品鑒(2020年7期)2020-09-11 08:04:44
一樣的資源,不一樣的收獲
我給資源分分類
資源回收
做好綠色資源保護和開發
當代貴州(2018年28期)2018-09-19 06:39:04
資源再生 歡迎訂閱
資源再生(2017年3期)2017-06-01 12:20:59
激活村莊內部治理資源
決策(2015年9期)2015-09-10 07:22:44
主站蜘蛛池模板: 奇米精品一区二区三区在线观看| 久久久国产精品无码专区| 亚洲美女视频一区| 成人蜜桃网| 看av免费毛片手机播放| 国产主播在线一区| 欧美午夜理伦三级在线观看| 毛片三级在线观看| 国产成人精品视频一区二区电影 | 欧美一级高清片久久99| 久久 午夜福利 张柏芝| 久久免费视频播放| 亚洲婷婷丁香| 国产一区二区精品福利 | 黑色丝袜高跟国产在线91| 国产网站免费观看| 国产男人天堂| h视频在线观看网站| 五月婷婷欧美| 乱码国产乱码精品精在线播放 | 国产欧美在线视频免费| 国产精品视频猛进猛出| 三级欧美在线| 国产欧美视频在线观看| 久久a级片| 国产网站黄| 成年人免费国产视频| 毛片网站观看| 亚洲性视频网站| 色精品视频| 亚洲,国产,日韩,综合一区| 中文字幕人妻无码系列第三区| 亚洲色图欧美激情| 国产欧美精品一区aⅴ影院| 欧美在线黄| 欧美日一级片| 99热国产这里只有精品9九| 午夜限制老子影院888| 丝袜美女被出水视频一区| 欧美成人影院亚洲综合图| 欧美久久网| 欧美色香蕉| AV熟女乱| 精品成人一区二区三区电影| 欧美一级高清免费a| 一级做a爰片久久毛片毛片| 91尤物国产尤物福利在线| 国产av无码日韩av无码网站| 色视频久久| 91午夜福利在线观看| 在线日本国产成人免费的| 国产欧美在线观看视频| 男人的天堂久久精品激情| 欧美专区在线观看| 狠狠亚洲五月天| 无码网站免费观看| 成人福利在线看| 欧美伊人色综合久久天天| 欧类av怡春院| 无码高潮喷水专区久久| 国产第一页免费浮力影院| 22sihu国产精品视频影视资讯| 91九色国产在线| 亚洲成av人无码综合在线观看| 日韩成人免费网站| 久久亚洲黄色视频| 国产激情国语对白普通话| 免费国产高清视频| 99热最新在线| 亚洲欧美人成电影在线观看| 日本久久久久久免费网络| 999精品色在线观看| 国产毛片不卡| 亚洲婷婷丁香| 国产国语一级毛片在线视频| 日本黄色a视频| 日韩在线播放欧美字幕| 国产最新无码专区在线| 欧美国产精品拍自| 亚洲精品成人福利在线电影| 亚洲成人网在线观看| 国产视频欧美|