More Related Content
Similar to Amazon CloudFrontで始めるお手軽簡単CDN (20)
Amazon CloudFrontで始めるお手軽簡単CDN
- 25. 25各層におけるキャッシュ例
Client Internet Web App Database
• ブラウザ
キャッシュ
• Akamai
•CloudFront
•Cloud Flare
• Nginx
• Apache
mod_cache
• APC(php)
• API Gateway
response
cache
• Amazon
ElastiCache
• redis
• Memcached
• Amazon
DynamoDB
Accelerator
(DAX)
- 34. 34代表的なContents Delivery Network
• Akamai
• インターネットトラフィックの2割を捌く最
大手CDN事業者
• CloudFlare
• 無料プランがあるCDNサービス。
WordPress等での利用が多い
• Amazon CloudFront
• AWSマネージドのCDNサービス
- 56. 56キャッシュコントロール機能(参考)
• 動的なコンテンツ配信 - Amazon CloudFront
• https://aws.amazon.com/jp/cloudfront/dynamic-
content/
• CloudFront エッジキャッシュにオブジェクトを保持す
る時間の指定(有効期限切れ)
• https://docs.aws.amazon.com/ja_jp/AmazonCloudFro
nt/latest/DeveloperGuide/Expiration.html
• Amazon CloudFrontのキャッシュ期間をコントロール
する(2015年6月版)
• https://dev.classmethod.jp/cloud/cloudfront-cache-
control/
- 68. 68まとめ
• CDN(Contents Delivery Network)は、Webサ
イトの速度向上に非常に有用な手段だ
• Amazon CloudFrontを利用することで、静的コン
テンツだけではなく、動的コンテンツもキャッシュ
対象とすることができる
• クラスメソッドメンバーズに入ると、CloudFront
がむちゃくちゃお安く使えますよ!
Editor's Notes
- はい。毎年恒例「これはなんでしょう?」のコーナーが始まりました。みなさん、もう流石に眠そうなのでね、ちょっと考えてみてください。
- もし、何か匂った方がいてもですね、とりあえず、微笑んでおいてください。
- もう少し数字でてきます。
- さらにどどんと。
ヒントとしては、今回ワタシがお話させて頂く、CDNの適用領域に関する話題となります。
- まぁこんだけずらずらっとならぶと、なんかちょっと嫌な感じですが、この結果から読み取れる教訓は、次の通り
- 「速さは正義」ということです。皆さん、今回参加いただいている皆さんの中で、Webサイトにまったく携わったことが無い!という方は皆無だと思います。
ここで正義とひとことで簡単に言ってしまうと、伝わりにくいんですが、この正義、いろんな意味が含まれています。
例えば、Eコマースサイトであれば、ページスピード速度はそのまま、売上に直結します。コーポレートサイトであれば、情報発信力やブランドイメージにも関わってくるかと思います。技術力への信頼もゆるぎます。また、イントラサイトだとすれば、それはそのまま社員の方の生産性に直結するものであると。
手前味噌で恐縮ですが、developers.ioは、むちゃくちゃ早いです。WordPressの極限を突き詰めてます。
Webサイトの本来の目的を達するための要件として、最重要事項の一つと言って良いです。
というわけで、本日私がここにいる理由はずばりこちら
- Webサイトの高速化手法として、まずは、そもそもの処理速度の向上
Webサーバであれば、ロジックのアルゴリズムの改善、DBだと、SQLのパフォーマンスチューニングなどがあたるかと思いますが、
- 喋ること(よみあげ)
喋らないこと(読み上げ)
はっきり言って、CloudFrontの機能のうち、3割も喋りません。が、あまり細かな機能をお話するよりも、Webサイトにおいて、CloudFrontを導入すると、わっしょ、こんな良いことがあるよ、というところをお話できれば良いです。
- アジェンダはこんな感じです。
- Webサイトの高速化手法として、まずは、そもそもの処理速度の向上
Webサーバであれば、ロジックのアルゴリズムの改善、DBだと、SQLのパフォーマンスチューニングなどがあたるかと思いますが、
- 手間かかりますね。工数かかると思います。もちろん処理の変更だけではなく、それに伴うテストなどを考えると、そんなにポンポン速度改善のためだけにロジックをいじる機会もあまりないかと思います。
- じゃぁ、2つめのアプローチとして、処理を並列化するというやり方もありますね。例えば、フロントエンド側だと、各DOMの要素をAJAXで非同期で呼び出して体感的なレンダリング速度を向上させるであったりとか、サーバー側だと、プロセスを並列実行させて、DBアクセス処理を同時に流すとかがあるかと思いますが、
- まぁこれも同じく手間がかかりますね。並列化したからってなんでも早くなるわけではないですしね。特に書き込みが発生するDBトランザクション処理とか、おいそれと並列化したかって、ACID属性を維持した並列化して高速化しようとしたら、それこそ物理的にテーブルやDBそのものを分けるとかしないと、スケールしませんよね。そんな簡単に並列化して高速化なんていえません。
- じゃ、最後のアプローチとして、そもそも、処理を減らす、これどうでしょう?
- はい簡単です。やること減らすだけなので。
- これぐらい簡単です。むっちゃ簡単そうなニュアンスだけ伝わればOKです。
でですね。これだけみると、「あんた何を言ってはりますん?」という気持ちになる方もおられると思います。
これ、一般的になんて言っているかというと、すごくありふれた用語ですね。
- キャッシュと、言う単語がここに当てはまります。
- キャッシュ的なものをどんどん活用していこうじゃないか、というわけです。
ここで、一般的なWebアプリケーションの構造をおさらいしておきます。
- こんな感じで、左から、クライアント、インターネット、Web(ELB)、アプリケーションサーバ、データベースがあると、いうのが一般的なWebアプリケーションの構造ですと。
で、これに対してですて、各層において、どんなキャッシュ戦略を取りうることが可能か?というのが、次のスライドになります。
- ざらーっと、代表的なところを並べてみました。
- キャッシュと認識していただいてOKです。
-
ここまででで、WebシステムにおけるCDNサービスの位置づけ的な話をしてきましたが、Amazon CloudFrontが、実際なんやねんという話をいたします。
- ここで、お伺いしたいんですが、
今まで、何かしらCDNサービスを使われたことがある方って、どのぐらいおられますか?
さらに、じゃ、Amazon CloudFromtを使ったことがあるかたもおられれば。
- 手間かかりますね。工数かかると思います。もちろん処理の変更だけではなく、それに伴うテストなどを考えると、そんなにポンポン速度改善のためだけにロジックをいじる機会もあまりないかと思います。
じゃぁ、2つめのアプローチとして、処理を並列化するというやり方もありますね。例えば、フロントエンド側だと、各DOMの要素をAJAXで非同期で呼び出して、体感的なレンダリング速度を向上させるであったりとか、サーバー側だと、プロセスを並列実行させて、DBアクセス処理を同時に流すとかがあるかと思いますが、
- それでは、実際にCloudFront導入するときのユースケースを紹介いたします。
- 既存のWebサイトをモデルにして、CloudFrontを導入するユースケースを3つほど挙げさせていただきました。
それぞれをですが、使用前、使用後で比較していただくことで、CloudFrontをどうやって導入して使うことができるんかなぁ?というところを感じていただければと思います。
- それでは、実際にCloudFront導入するときのユースケースを紹介いたします。
- 最後ですね。CloudFront、実際いくらぐらいかかんのん?という、コスト面、お答えいたします。
- Webサイトの高速化手法として、おもに3つの戦略が挙げられます。
「(読み上げ)」
まず第一に、処理速度を向上させるというアプローチ。WebサーバからDBサーバへのリクエスト、そのトランザクションの処理内容を改善して、高速化させる。よくあるのが、DBパフォーマンス・チューニング(SQLの改善)であったりとか、Webサーバー側だと、アプリケーション処理の効率化など挙げられますが、
- Webサイトの高速化手法として、おもに3つの戦略が挙げられます。
「(読み上げ)」
まず第一に、処理速度を向上させるというアプローチ。WebサーバからDBサーバへのリクエスト、そのトランザクションの処理内容を改善して、高速化させる。よくあるのが、DBパフォーマンス・チューニング(SQLの改善)であったりとか、Webサーバー側だと、アプリケーション処理の効率化など挙げられますが、
- それでは、実際にCloudFront導入するときのユースケースを紹介いたします。