AmazonがAmazon CloudFrontというCDNを始めました。
9月中旬に一部の顧客で試しているという案内が来たので、始まったら知らせて欲しいとエントリーしていたら、メールが来ました。忙しいと、ニュースチェックが遅れるので、ありがたいです。
メールが来てビックリしました。エッジサーバ、アメリカは8箇所、ヨーロッパは4箇所ですが、さらにアジアは、香港と日本。日本ですよ。
そんなわけで試してみました。
○CloudFrontの概要
CDNに乗せたいファイルをAmazon S3に設置して、配信のための設定をするだけです。
S3 Firefox Organizer for Amazon (S3Fox)というFirefoxのアドオンを使えば、右クリックと左クリック1回ずつで配信できちゃいます。
○Amazon S3
CloudFtontとは関係ないんですが、S3においたファイルは、http://[bucket_name].s3.amazonaws.com/[file_name]という形でアクセスするのですが、DNSでCNAMEを設定すれば、 独自ドメインでもOKなことを今日知りました。
s3.octava.jpというサブドメインで運用したいときは、s3.octava.jpというbucketを作成して、DNS側でCNAMEにs3.octava.jp.s3.amazonaws.comを設定するだけです。
詳しくは、Virtual Hosting of BucketsのCustomizing Amazon S3 URLs with CNAMEsを参照。
○Amazon CloudFront
続いて、本題のCloudFront。
S3Foxでファイルを選んで、右クリックからManage Distributionsを選択。
Amazonが用意しているXXXXXXX.cloudfront.netというドメインでよければ、そのまま Create Distributionをクリックすると、配信準備が始まります。そこそこ時間がかかります。In ProgressがDeployedになったら完了。
独自ドメインを使いたい場合は、CNAMEを入力する欄に入力します。たとえば、edge.octava.jpとか。カンマ区切りで、複数指定することもできます。あとは、DNSの設定をするだけ。
○速度は?
10KB弱の小さいファイルなんですが、数回ab -n 100 -c 10 して試してみました。
S3のときは、400〜600msで、ごく稀に4000〜5000msになることもありました。
CloudFrontでは、50〜80ms。かなり、快適になりそうな感じ。
ほかの試した方を探してみました。
Amazonが従量課金制のCDNサービス「Amazon CloudFront」を開始・・・したので試してみた
ファイルサイズが大きい場合、キャッシュの効果もきちんと出ているようです。
ちなみに、料金は日本のEdgeサーバを使う場合が一番高いんですが、それでも最初の10TBまでは$0.221 per GB(一案安いアメリカとヨーロッパは$0.170)。今回はちょっと試してみただけなので、S3に$0.04、CloudFrontに$0.02でした。
前の会社では、アカマイを使ってたんで、EdgeJavaとかESIとか、Web Application AcceleratorとかSureRouteとか、単なるCDN以上におもしろいのですが、スタートアップ企業には敷居が高いですよね。その点、Amazonは従量課金なので、導入しやすいですね。