CloudFrontのマルチオリジン機能とは、Behavior(振り分けルール)を設定することでURLパスによって振り先(オリジン)を変えることができる機能です。この機能を使えば、本デザインパターンのように、一つのドメインで静的コンテンツを④ S3から、動的コンテンツを②オンプレミスのWebサーバや③ AWS上のWebサーバ Lightsailから配信するように接続先を振り分けることができます。
1つのドメイン(サブドメイン含む)で、⑦ AWS Marketplaceで販売されているWordpressがインストールされたAMI(Amazon Machine Image)を使って起動直後からWordPressが動作する③ Lightsailからのコンテンツ配信と、静止画像や動画は④ S3から配信する、そして、既存のオンプレミス環境の② Webサーバからも配信できるように① CloudFrontに設定した運用例です。この場合、オンプレミスのWebサーバにあたかもWordPressを追加したかのように見えますが、WordPressはAWS側で動いているのでオンプレミス側の負荷は全く発生しません。
また、⑥ Athenaを使うことで、① CloudFrontの下記のようなアクセスログをSQLクエリで集計することもできます。
- どの地域からのアクセス数が多いか把握できます。SELECT x_edge_location, count(*) FROM cf_log WHERE request_date = 日付
- クライアントのIPアドレスごとのアクセス数が集計できるので、不適切なアクセス元IPの特定にも使えます。
- アクセス先のURLパスごとに、ユーザへの平均レスポンス時間が集計できます。