一、采用CDN借助一張圖來說明下,其實(shí)CDN的概念大致可以理解為在每個地區(qū)建立一個網(wǎng)絡(luò)中心,這樣做的好處就是用戶訪問速度加快了,不然的話就比如說你只有一臺服務(wù)器在北京,而我要在全國各地去訪問,這樣的話信道傳輸速度肯定會變慢,所以為了使內(nèi)容傳輸?shù)母臁⒏€(wěn)定。可以通過在網(wǎng)絡(luò)各處放置節(jié)點(diǎn)服務(wù)器的方法來加快資源訪問。
目前阿里云、騰訊云的CDN服務(wù)可以幫我們?nèi)ジ愣ㄟ@些事情,他們在全球各地都會有這種網(wǎng)絡(luò)中心,而我們可以進(jìn)行租用,我們把一些資源上傳的時候,可以進(jìn)行文件的同步到各個服務(wù)器,這樣的話各個服務(wù)器其實(shí)就都有資源了。用一個例子可以詳細(xì)的解釋下,就是比如說以前雙11的大搶購,有的時候我們發(fā)現(xiàn)買的東西可能是半個月之后到,而到了現(xiàn)在,這種情況也有所改善,因為現(xiàn)在商家都會進(jìn)行大數(shù)據(jù)分析,然后分析哪個地區(qū)的人對這個商品的需求比較多,然后我再進(jìn)行在這個地區(qū)進(jìn)行倉庫的部署。這樣我們收到快遞的時候肯定是大大減少了的

二、minified
這個方法其實(shí)主要做的就是把源代碼的量給減少,比如說把換行給刪除了,以及把代碼都寫到同一行中,這樣的話代碼的量就減少了,減少數(shù)據(jù)的傳輸量,帶寬的概念,帶寬應(yīng)用的領(lǐng)域非常多,可以用來標(biāo)識信號傳輸?shù)臄?shù)據(jù)傳輸能力、標(biāo)識單位時間內(nèi)通過鏈路的數(shù)據(jù)量、標(biāo)識顯示器的顯示能力。
三、緩存機(jī)制先介紹下一些概念,Web服務(wù)器一般指網(wǎng)站服務(wù)器,可以向瀏覽器等Web客戶端提供文檔, [1] 也可以放置網(wǎng)站文件,讓全世界瀏覽;可以放置數(shù)據(jù)文件,讓全世界下載。
ETags和If-None-Match是一種常用的判斷資源是否改變的方法。類似于Last-Modified和HTTP-IF-MODIFIED-SINCE。但是有所不同的是Last-Modified和HTTP-IF-MODIFIED-SINCE只判斷資源的最后修改時間,而ETags和If-None-Match可以是資源任何的任何屬性,不如資源的MD5等。
ETags和If-None-Match的工作原理是在HTTP Response中添加ETags信息。當(dāng)客戶端再次請求該資源時,將在HTTP Request中加入If-None-Match信息(ETags的值)。如果服務(wù)器驗證資源的ETags沒有改變(該資源沒有改變),將返回一個304狀態(tài);否則,服務(wù)器將返回200狀態(tài),并返回該資源和新的ETags。
下面其實(shí)就是去判斷有沒有緩存,判斷有沒有過期,是否還有效,如果還有效的話就直接去緩存中讀取,如果無效了就去判斷是否含有Etag,如果含有的話就去服務(wù)器請求驗證Etag有沒有改變,如果改變了就去服務(wù)器去讀取,如果沒有改變就去緩存中去讀取,
然后如果沒有Etag的話,那么就去判斷有沒有Last-Modified,然后如果有的話,一樣的去服務(wù)器做驗證,如果驗證成功沒有改變的,就直接去緩存中讀取,如果改變了就去服務(wù)器讀取數(shù)據(jù)。

四、壓縮
我們?nèi)グl(fā)送請求去請求數(shù)據(jù)的時候可以去告訴服務(wù)器端,我們?yōu)g覽器客戶端支持什么樣的壓縮算法比如說gzip,然后服務(wù)器端就把要傳給瀏覽器端的數(shù)據(jù)進(jìn)行用相應(yīng)的算法進(jìn)行壓縮,然后傳過去,這樣的話就是降低了網(wǎng)絡(luò)傳輸?shù)淖止?jié)數(shù)了。會有一個這樣的東西
