コスト3分の1を実現したAWSサーバ構成を大公開!

制作/開発 2022.02.04

パンタグラフ運営の大学受験生応援メディア「受験のミカタ」では、立ち上げ時にはレンタルサーバでスタート。その後、試行錯誤を重ね、現在はレンタルサーバとクラウドサーバ「AWS」を組み合わせて、サイトを運営しています。

今回は、エンジニアがそんな「受験のミカタ」のサーバ構成を紹介します。

サーバをAWSに移行した経緯

もともと「受験のミカタ」では、マネージドレンタルサーバでサイトを構築。60万PV程度までは、特に問題はありませんでした。

しかし、センター試験時にアクセスが急増。 [503 service temporarily unavailable] エラーでサイトへアクセスできなくなるという事態が発生しました。

その際に、完全にAWS(自動スケーリングなし)へサイトを移動しました。

AWSに移行したことで、ページ表示速度等に問題はありませんでしたが、データ転送速度に基づく料金については、従量課金のため、料金が高くなってしまうという課題に直面しました。

 

その課題に対し、負担となっているファイルを調べたところ、

  • 画像
  • CSS
  • JavaScript(js)

が重いことが判明し、固定価格で利用できるレンタルサーバに一部を移動することにしました。

 

現在のサーバ構成

サーバ構成の検討をする中で、目的はサーバとメンテナンスコストを最小にして最大のパフォーマンスを達成することでした。

そのため、「受験のミカタ」では現在以下のサーバ構成をとっています。

  • LB(ロードバランサー): Webサーバ向けにALBとNLBの 2種類のロードバランサーがあります。NLBは、レイヤー4 (トランスポート層)で機能し、データパケットを開く必要がないため、速度が早いため、受験のミカタでは、速度を考慮してNLBを選択しています。
  • ASG:サーバへのアクセスは、ピーク時とオフピーク時で異なりますので、コストとメンテナンスのことを考えてWebサーバー(EC2)のスペックは最小限にしておいて、アクセスに応じてWebサーバー(EC2)のインスタンス数を増減できるようにしています。
  • EFS:Elastic File Serverの略で、Amazonが管理しているマネージドNFSサービスです。すべてのWebサーバが同じソースとアセットを取得するため、ドキュメントルートとしてEFSを使用します。EFSは複数のEC2に接続できます。
  • Amazon EC2:Amazon Elastic Compute Cloudの略で、スケーラブルなコンピューティングキャパシティーを提供してくれます。EC2を使用すると、必要な数 (またはそれ以下) の仮想サーバの起動、セキュリティおよびネットワーキングの構成、ストレージの管理ができます。EC2 は、需要増に応じてスケールアップまたはスケールダウンできるため、5分間のcpu/memory負荷が70%以上の場合はスケールアップ、15分間のcpu/memory負荷が40%以下の場合はスケールダウンする設定にしています。
  • Amazon RDS:すべてのWebサーバで同じDB(データベース)へデータを読み書きできます。
  • Amazon CloudWatch:CloudWatchを使用して以下を行っています。
  1. アクセス&EC2のCPU, メモリを監視してスケールイン/スケールアウトを実行
  2. サーバ(EC2, RDS)の状態を管理者にメール/SMSを送信
  3. EC2のログを保存
  • S3:WordPressサイトの管理ウィンドウからアップロードされたすべてのアセットは、WordPressプラグインを使用してS3にアップロードされます。
  • Amazon CloudFront:S3からアセットを取得し、CDNとして使用しています。
  • 共有レンタルサーバ:AWSの帯域幅は高価($0.114 per GB、2022年2月時点)であるため、静的アセットにはレンタルサーバを使用しました。レンタルサーバでは、まず、要求されたアセットが存在するかどうかがチェックされます。存在していれば応答をレンタルサーバから送信します。存在してない場合Amazon CloudFrontからアセットを取得してキャッシュし、応答を送信します。同じアセットに対するすべてのリクエストは、レンタルサーバのキャッシュから処理されます。

 

サーバ構成を変更した結果

上記構成にしたことにより、受験のミカタはサーバ150万超/月間のアクセスにも耐えられるサイトになりました。

表示スピードに変化はなく、センター試験(現在の大学入学共通テスト)時に急増したアクセスに対しても、対応できています。

また、費用面でも効果を発揮しています。

AWSのみを使用した2017年4月のコストとサーバ構成を変更した2020年5月のコストを比較してみましょう。

時期 PV コスト
2017年4月 702,349

AWS  料金 $182
※その内、css、js、画像などをホストするAmazon CloudFront (CDN) の料金は$109

2020年5月 1,780,439 $151.76

もし、2017年4月時点のインフラ構成のまま、2020年5月のPVになっていたとすると、PV比2.53倍として簡易的にコストを同じ倍率で計算すると、2020年5月では約$460となっていました。しかし、インフラ構成を変更していたことで、実際は$151.76と約1/3のコストに抑えることができています。

 

このようにサーバは、サイトの条件や状況に応じてカスタマイズすることで、最小コストで最大のパフォーマンスを実現できます。

パンタグラフでは、インターネット事業を中心とした戦略立案に向けて、課題抽出から企画提案まであらゆるサポートを実施しています。今回紹介したのはあくまで一例になりますので、サーバ周り、サイト周りでお悩みの方はぜひご相談いただければと思います。ご相談は無料ですので、お気軽にお問い合わせください。

お問い合わせはこちら

パンタグラフブログとは?

パンタグラフブログは、社内のメンバーがデジタルマーケティングに関する情報を積極的に配信するためのブログです。トレンドやノウハウ、成功事例やリサーチ情報を定期的に配信しています。このブログがきっかけでお問い合わせいただくこともあります。気になる方は、パンタグラフ通信(メルマガ)へのご登録をお願いいたします。

最新トレンドやWebマーケティングに関するお役立ち情報を随時配信中
自社サービスの成長やマーケティングのネタにお役立てください。

メールアドレスを入力してください

メールアドレスを正しく入力してください