AWS - Cloudfront CDN 測試

AWS 幾年前就推出了他的CDN服務- Cloudfront,可以允許創建一個URL,指向用戶自己的S3 bucket或者Web server。當其他人訪問這個Cloudfront URL的時候,DNS會自動解析到最近的物理位置的邊緣服務器(Edge server),然後edge server會查詢自己是否已經有相關的緩存,如果沒有,他會向Orgin發送請求獲取信息,並保持在當地。默認的緩存時間是24小時。


詳細的工作過程參考以下鏈接

http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/HowCloudFrontWorks.html


首先,先創建一個S3 Bucket, 取名叫做beanphoto, region就設在Sydney好了


wKiom1PYmCHBLaScAAA9RJIjkqU124.png


然後上傳一個圖片

wKioL1PYmT3DMSdhAABDNoDM9Cg947.png


爲了保證所有人都能從Cloudfront的URL訪問,必須設置成public 

wKiom1PYmCWzT0wwAAA2bu0zeE4184.png


先看看S3 Bucket本身的鏈接是否工作

wKioL1PYmT_igylbAAA1WbpTOl8918.png

打開木有問題。風景不錯吧,這個是豆子在斐濟的一個小島拍的照片

wKiom1PYmDeTX8jRAAPZupTiIFo622.png


切換到CloudFront, 點擊 Create Distribution


wKioL1PYmVbz3A2hAABgyTzEs_s201.png


選擇 Web, RTMP是給流媒體準備的

wKiom1PYmECTetRbAAB67D_owQs365.png


Domain name輸入S3 Bucket的名字,其餘的默認選項

wKioL1PYmV7wA9E8AACk0x6jV54984.png



Price Class可以選擇世界內的範圍,我選擇的美國和歐洲


我還添加了一條CNAME,因爲Cloudfront自動生成的URL太難記住了,同時我還需要在DNS的控制面板裏面也添加對應的CNAME

wKiom1PYmEbRMIn-AABjUGPIN3w874.png


點擊確定之後就會開始創建,他會把相關的配置(不是具體的內容)傳送給所有的Edge Server。這個過程大概要15分鐘左右。

wKiom1PYmEjzEsHYAABjIPOegDs044.png



接下來,豆子登錄Godaddy,添加一條CNAME


wKioL1PYmWSgUNVmAABRLITvKyA998.png


添加好了,等候個5分鐘左右就可以查詢了

wKiom1PYmEyTxx83AAAyg-kJnaQ628.png



解析一下CNAME,成功。

可以看見對應的Cloudfront URL有多個服務器地址,這些都是Edge Server的地址

wKioL1PYmXGSQOe9AAAY-yZ01Rw401.png


等了15分鐘,總算配置完成了

wKiom1PYmFminwDSAABiVZbKb7I921.png


我們來測試一下是否有效。

登錄這個測試網站 http://tools.pingdom.com/


首先測試S3的初始地址,大概需要4.66S才能打開



wKioL1PYmX_hJGlRAAHM-zWhLi4336.png

然後測試一下CDN之後的URL,只需要724ms


wKioL1PYnUOTqmqCAAFr7cgGLa0740.png

通過顏色對比,可以發現DNS解析,連接,下載數據的時間都大爲減少了!


wKiom1PYnCvhBbekAAArZJY19qU023.png


隔了一天之後,甚至還可以查看CloudFront的相關訪問記錄


比如歐洲的邊緣服務器被訪問了4次


wKioL1PZdjyyHaLuAACzhCMgUEM347.png


而美國的邊緣服務器被訪問了15次左右


wKiom1PZdSSSQshEAADP8Kn6Vx4381.png


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章