2015年12月初,谷歌宣布了云內容分發網絡(CDN)的Alpha版本。該服務旨在通過谷歌的全球分布式邊緣緩存從更近的地方向終端用戶提供靜態內容。谷歌提供的邊緣緩存要比數據中心多得多,因此,提供內容的速度比向谷歌的某個數據中心發送完整的往返請求要快。谷歌總共提供了超過70個邊緣接入點,它們會協助處理客戶的CDN需求。
要使用Cloud CDN,用戶必須在自己的實例上使用谷歌計算引擎的HTTP(S)負載均衡器。啟用HTTP(S)負載均衡器只需要執行一條簡單的命令。
在最近的一篇博文中,谷歌是這樣解釋該服務的機制的:“當用戶從站點請求內容,請求會經過谷歌網絡邊緣的網絡位置,與實際的實例相比,該位置距離用戶要近許多。第一次請求內容的時候,邊緣緩存發現自己無法滿足請求,就將請求進一步轉發給實例。實例將響應發回邊緣緩存,而緩存會立即將內容發送給用戶,同時還會將其存儲下來用于響應將來的請求。如果后續請求經過相同邊緣緩存并且請求相同的內容,那么緩存會直接響應用戶,這縮短了往返時間,節省了實例處理請求的開銷。”
下圖說明了谷歌如何利用邊緣接入點緩存來提高響應速度:
圖片來源:https://cloud.google.com/compute/docs/load-balancing/http/cdn
一旦CDN服務啟用,它就會自動緩存所有可以緩存的內容。通常,可緩存內容由HTTP GET請求定義。該服務會遵循顯式定義的Cache-Control頭信息,考慮過期或壽命信息。那些包含Set-Cookie頭,消息體超過4MB或者通過no-cache指令明確禁止緩存的響應不會緩存。用戶可以從谷歌的文檔中查看完整的緩存規則列表。
為了提高向客戶提供內容的速度,谷歌一直在同第三方合作,合作伙伴包括 Akamai、Cloudflare、Fastly、Level 3 Communications和Highwinds。
其他云提供商也有CDN產品,包括亞馬遜的CloudFront和微軟的Azure CDN。谷歌也面臨著來自Akamai(也是前面提到的一個合作伙伴)的競爭,在Alexa前100萬個站點中,該企業大約占據著16.3%的CDN市場份額。
查看英文原文:Google Launches Cloud CDN Alpha