背景:
1,公司服務全部在香港
2,所有的服務也都在香港
3,但是我們的客戶都在國內
4,那麼國內使用者訪問香港的服務 那麼就會存在慢的問題
至於為什麼不放到國內,因為我們公司是做nft的。所以你懂得。
一、加速
1.1 靜態加速
1,顧名思義,就是靜態檔案的加速。比如html, js, css, img。等等。
2,這些靜態資源的加速,用雲廠商的cdn就可以解決。靜態資源的加速。
1.2 動態加速
1,顧名思義,就是加速一些動態的資料,也就是我們所說的api介面的資料
2,但是api資料是實時的,不能先快取啥的。
3,所以就只能加速api的訪問速度
4,訪問速度又受網路的影響,所以我們只需要加速網路
二、部署
1,我們選擇了阿里雲的全球加速產品(dcdn)
2,因為我們所有的資源都在阿里雲
三、架構
使用者:
來自全球各地的訪問,其實國內的最多
3.1 第一步:dns
其實這塊的dns阿里雲有一個智慧dns解析,這塊也可以加速,在解析的速度
3.2 第二步:dcdn
1,dcdn可以理解為全球阿里雲自己的上車入口
2,阿里雲的dcdn全球有3200+的上車節點
3,因為有智慧dns,所以會選擇使用者最近的dcdn節點上車
4,上車後,dcdn會根據演算法計算出 最優的一條路線回源
5,這條網路線路,可能是阿里雲內外網路,也可能是移動,電信,聯通網路
6,就是尋找一條最快的網路,然後回源到GA上車點。
3.3 第三步:GA
1,dcdn後面是我們購買的全球加速GA
2,GA需要購買加速區域,我們購買了香港上車點,和北京上車點。
3,dcdn尋找到最優的路線回到GA
4,GA就是依託於阿里雲自己強大的BGP網路有自有網路。
3.4 第四步:ALB
1,GA回源到了我們的ALB。
2,我們的ALB也是動態的,速度也會快很多
3,最開始我們選擇了把waf加在了alb上面。但是後面我們有調整到了dcdn上面。
4,最開始waf在alb。然後大量的攻擊 對dcdn產生了 很大的費用。
5,所以我們就直接在dcdn開啟了waf功能,從源頭就開始過濾攻擊
6,效率更高了,更省錢了
3.5 第五步:後端伺服器
1,最終會到我們自己的內網,伺服器。
2,最終會返回資料。
四、總結
1,其實加速的架構有很多
2,看找到合適自己公司的業務的就行
3,最開始不知道咋 設計,也是一點一點的 實踐出來的