構成図ソーシャルゲームの負荷対策のため、WordPressを静的化しサーバーレス化ツイートシェアはてなアクセスが多くサーバーダウンが発生してしまうWordPressを、落ちないWordPressとすべく、静的化構成とした成功事例をご紹介します。概要ソーシャルゲームの利用者数が順調に増加したことで、WordPressで作成したページの応答が遅くなり、サーバーダウンが発生していたWordPressを静的ページ化することで、ゲームのイベント時も安定して高速表示ができるようになったインターネット公開サイトをCloudFront+S3とサーバーレス構成にしました改善前の構成リリース当時は国内サーバー事業者の物理サーバーを使用していました。ゲーム内で最新情報を伝える必要があり、CMSとしてWordPressを利用していました。WordPressはアクセスがあるごとにPHPのプログラムが動くため、大量のアクセスなどにはしっかり準備をする必要があります。今回はゲームのイベント時の同時アクセスにも耐えられる構成を構築する必要がありました。サーバーダウンも発生している状況のため、今からWordPressを他のCMSにする時間もありません。いくつか構成として取りうる選択肢がありましたが、安価にWordPressの利便性を落とさず対応可能な方法としてWordPressの静的化構成を選択しました。構成解説EC2へ管理用WordPressを構築コンテンツ管理用のWordPressをEC2で構築します。このWordPressへアクセスするのは、サイト管理者のみです。WordPressサイトを静的ページに変換するプラグインを導入し、サイトをhtmlファイルとして出力しています。S3ホスティングS3はAWSの提供する99.999999999%の耐久性を持つ非常に堅牢なストレージです。プログラムを実行することはできませんが、HTMLファイルやjavascript、画像などの静的なファイルを置き、Webサーバーとして利用できます。どんなに大量のアクセスが来てもほぼ落ちないとないのがウリです。EC2で作成したサイトのHTMLファイルなどを置くことでWebに公開できます。S3上のファイルはhttpsではアクセスできず、httpでの接続になります。Network)サービスです。世界のどこからアクセスしても、最寄りのサーバーが応答することで高速なアクセスが可能です。今回は高速配信の恩恵もありますが、主にSSL対応をすることを目的に採用しています。静的化したWordPressのサーバーレス構成では次のようなメリットがあります。サーバーダウンがなくなったWordPressを静的化し、サーバーレス構成とすることでサーバーダウンがなくなりました。Webサイトの応答も高速になり安定稼働しています。ソーシャルゲームユーザーにストレスなくご利用いただくことで継続率も高まるものと考えています。セキュリティの向上ユーザーがインターネットからアクセス可能なシステムはCloudFrontとS3のみです。いずれもOS領域にアクセスすることができないマネージドサービスのため、セキュリティ面でとても強固になりました。唯一、WordPressの管理目的で利用しているEC2インスタンスもIP制限を行うことで外部からの攻撃を受けることはありません。上記と関連しますが、WordPressを広くインターネット上へ公開しない構成のため日々発生するWordPressのセキュリティ対応に追われることがありません。アップデートの検証を行った後に、本番環境へ反映を行う運用が可能となります。おわりに今回はソーシャルゲームの最新情報を伝えるためのWordPressを静的化し、サーバーレス構成に変更した事例をお伝えしました。WordPressは様々なプラグインが提供されているため、静的化して良いケースとしてはいけないケースが存在します。場合によっては、サーバースペックを上げるだけで済むケースやWebサーバーを負荷状況に合わせて増やす構成なども考えられます。ユーザーへ提供したい要件を正しく把握した上で、適切なクラウド構成とすることでスピーディーにコストを抑えて実現することができた事例です。ツイートシェアはてなkanekoWeb系のアプリケーション、インフラの要件定義から設計運用まで幅広く経験してきました。最近はクラウド周りを中心に活動しています。