静的配信をWebサーバーから外す
Akamai CDNを導入し、約90%のオブジェクトを利用者の近くでキャッシュ。ベアメタルのオリジン負荷を軽減しました。
~90% 利用者の近くでキャッシュしたオブジェクトプロジェクトの話を読む
出発点
2008年、Web基盤は1台のロードバランサーとベアメタルサーバーで構成され、キャッシュ層はありませんでした。静的コンテンツも直接Webサーバーへ届きます。気象サービスでは天候や大きな出来事で需要が激しく変わり、普段の約20倍のアクセスが来る日もありました。小売のBlack Fridayのような増え方に対応できる、拡張可能な仕組みが必要でした。
ボトルネック
リクエストが増えると、使えるソケットが限界に達しました。何度もオリジンから返す必要のない内容が多くても、サイトが応答しなくなることがありました。
変えたこと
Akamaiで約90%のオブジェクトを近くにキャッシュでき、オリジンに届くリクエストは約10%に。約90%の負荷を外せたため、Webサーバー群も縮小できました。
運用の選択肢も増えた
混雑日には、適した内容のキャッシュ時間を延ばして、さらにオリジン負荷を下げられました。全体に同じ設定をかけるのではなく、どこなら長く保てるかを選べるようになりました。
学んだのは、繰り返し配る内容を利用者に近づけ、キャッシュポリシーを性能だけでなく運用の手段として扱うことです。過去の事例の概要であり、インフラの識別情報や内部の運用詳細は省いています。


クラウド / システム