利用 AWS CloudFront 的 Custom Origin 實做標準 deflate/gzip 壓縮

在「gzip support for Amazon Web Services CloudFront」這篇提到了要如何用 CloudFront 的 Custom Origin 實做標準 deflate/gzip。

之前 CloudFront 就有支援 Vary header,雖然只支援 Accept-Encoding,但這就是我們要的:(Appendix: Custom Origins)

The only acceptable value for the Vary header is Accept-Encoding.

本來 S3 沒有能力依據 Accept-Encoding 送出不同的結果,這次有了 Custom Origin 出來以後掛個有能力 gzip-on-the-fly 的 Web Server 就可以做到了,檔案也不一定要放到 S3 上 (可以放 EBS)。

基本上這個功能可以用現有的外部機器做 (因為 CloudFront 連到 Origin 的量應該不大),或是 EC2 的 micro instance 應該也夠用了...

Netflix 拋棄 Akamai CDN,改以 Level 3 CDN 為主力

這幾天 CDN 市場裡比較大的新聞之一,從這篇開始:「Akamai To Lose Netflix As A Customer, Level 3 and Limelight Pick Up The Business」。

另外的後續報導是:

Netflix 以前以 DVD 租用服務為主,在推出 Video Streaming 後其實可以節省很多成本 (如果以郵寄的成本與 bandwidth 的成本比較起來),而且會是未來的趨勢,所以在 CDN 這塊不僅靠著量大成為重量級客戶,還是很重要的「指標性客戶」。這次傳言因為效能因素從 Akamai 換成 Level 3 絕對是震撼彈,對於所有 CDN 的品牌迷思會是很重要的革新。

我相信 Level 3 最近不斷公告增加美加地區的 PoP 承載能力應該跟這筆合約有關,而且我也相信 Level 3 應該有能力吃下 Netflix 的量...。

Windows Azure CDN 的台灣 PoP...

自九月開始,微軟的 Windows Azure CDN 增加了兩個 PoP:「20 Nodes Available Globally for the Windows Azure CDN」,參考文章最後的「UPDATE - 9/1/10」部份。

  • Seoul, KR
  • Taipei, TW

這樣又多了一個 CDN 在台灣有 PoP... 其他幾家是 AkamaiCDNetworks

在台灣放的點是是方電訊,以微軟自家的 hp.msn.com 測試 (目前是 CNAME 指到 msnimstore.vo.msecnd.net),從 HiNetSEEDNet台灣學術網路 (透過 SEEDNet 轉過去) 都會被導到台灣的點,而台灣固網則是被導到美西,看起來是因為台固與是方是走 TWIX...

是該跳下去玩看看的時候了...

台固的 Akamai cluster 似乎撤掉了...

前陣子 jnlin台固到香港變差,結果剛剛才發現 Akamai 從 7/26 後會把台固的使用者導到香港,而不是導到原本在台固內的 cluster:

遠傳 (Seednet) 的就沒這個問題:

這麼一來,台固出國變差也不是什麼奇怪的事情?

Amazon CloudFront 支援 HTTPS 並且降價

Amazon CloudFront 宣佈支援 HTTPS,北美增加紐約 PoP,並降低單一 request 的費用:Amazon CloudFront: HTTPS Access, Another Edge Location, Price Reduction

HTTPS 的部份,因為 SSL Certification 是 *.cloudfront.net,所以不能使用自己的名稱 (CNAME 過去的那個名稱),否則在瀏覽器裡會出現警告視窗。像是 https://test.gslin.org/jquery-1.4.2.min.js 會出現警告視窗,但 https://d709c28ax59vf.cloudfront.net/jquery-1.4.2.min.js 則不會。

除此之外,可以設定只能透過 HTTPS 傳輸,如果透過 HTTP 則擋下來不讓他用。價錢部份,HTTP 的單一 reuqest 價錢則是降了 25%,而 HTTPS 的價錢剛好是原來 HTTP 的價錢。

另外一個比較意外的消息是,CloudFront 之前在紐約沒有 PoP,這次建好上線使用... 先前應該是透過 Newark, NJ 的 PoP 服務東岸北部?

AWS 頻寬再降價

Amazon Web Services 除了是這個領域 (Cloud Computing雲端計算) 的主要發起者之一以外,同時也是領先者。不僅一直開發新功能,同時對已經完善的部份想辦法盡力打壓競爭對手:降價。

今天看到 AWS 的頻寬費用又降價了,從二月開始的頻寬費用以新價錢計算:「AWS Outbound Data Transfer Prices Reduced By $0.02/GB」,outbound 頻寬費用再降 USD$0.02/GB,這次降價包括 CloudFront 也都在內。依照地區不同,降幅大約是 10% 上下。

即使服務放在外面 (租用 dedicated hosting),用 S3 比起自己建一台有 RAID1 的機器跑 nginx,大家還是偏好用 S3。如果需要的話還可以上 CloudFront?(像是 TwitterPlurk)

最近 HiNet 的 transparent proxy 異常...

HiNet 的 transparent proxy 主要是放在接國際線路的點上面,這兩個禮拜發現很不穩定,連帶會導致用 HiNet ADSL 的人會偶而連不上國外的網站...

第一個是國外網站,拿 AlexaTop Sites in Taiwan 的前 30 名來說,FacebookLive (Bing 反而上了 Akamai,這個後面談)、6waves (農場的公司)、Wikipedia (維基百科)、BaiduBadongoPlurk土豆Plus28 的伺服器因為沒有放台灣內,所以網站本體會不太順。

另外再來是 CDN 的問題。除了台灣有節點的 CDN 以外,其他都會受到影響,也就是說,除了 Akamai 以及 CDNetworks 以外都會受到影響。這也使得我們家得把 HiNet 使用者改指到 Akamai 與台固。比較明顯的是樂多Twitter 與 Plurk 的圖片使用 CloudFront

第三個問題是使用者自己調整設定後造成的,最近比較常見的設定是 Google 提供的 DNS 服務,分別是 8.8.8.88.8.4.4。理論上這兩組 server 都是用 Google 台灣機房的服務,但是 Akamai 沒有辦法判斷使用者的 ISP (他只能判斷出是台灣 Google 來的 query),所以不能導到台灣任何一個 PoP (因為台灣的量比較少,要降低成本的一個方向是改談 local service),所以用 Google DNS 的人,會被導到香港的 PoP,於是就會經過 HiNet transparent proxy。

這是用 8.8.8.8 查 Facebook CDN 的結果,拿 IP trace 可以發現在香港:

;; ANSWER SECTION:
static.ak.fbcdn.net.    7196    IN      CNAME   static.ak.facebook.com.edgesuite.net.
static.ak.facebook.com.edgesuite.net. 21596 IN CNAME a749.g.akamai.net.
a749.g.akamai.net.      16      IN      A       63.150.131.187
a749.g.akamai.net.      16      IN      A       63.150.131.171

zonble 提到的「If you found that you cannot see any images on Facebook」的問題應該屬於這類。