サイトを構築・運用する環境の選定ポイント
レンタルサーバーの種類
共有サーバー
1台の物理サーバーを複数のユーザーで利用する
ディスク容量/サーバーマシンメモリなど、マシンスペックを大人数で共有する
利用している誰かがレンタルサーバーに負荷を与えてしまうと、連帯で負荷がかかってしまう
大容量リソースを必要とするシステムを設置するのは不向き
静的ページ展開、小規模なスクリプト、CMS展開ぐらいであれば向いている
レンタルサーバー内部のミドルウェアへの干渉は基本できないので、独自のミドルウェアを設置することはできない
ただし、webサーバー/メールサーバー/DBサーバーなどのWebサイトを展開する上で必要なミドルウェアがすでにインストールされてる状態で割り当てられるので、提供さっれたものをそのまま利用する場合には手間が少ない
専用サーバー
1台の無釣りサーバーを専有して利用する
管理者権限を獲得できるので自由にWebサーバー構築/設定することができる
共有サーバーとディスク容量/サーバーマシンメモリなど、マシンスペックの干渉がない
大規模サイト、Webシステム、アプリケーションの構築展開に向いている
ただ、Webサーバーなどのミドルウェアは基本的に自分での構築/運用を行う必要があるので、それなりの知識が要る
コストも共有サーバーと比べると膨大になるため、それに見合ったサイト収益/仕様かどうか見定める必要がある
VPS
共有サーバーで専用サーバーのように自由にWebサーバー設定を行いたい場合にはVPS(Virtual Private Server)を利用する
1台の物理サーバーの中に複数の仮想サーバーを構築したもの
管理者権限も得られ、自由にサーバー構築/設定をすることができる
仮想サーバー一つひとつにCPU/メモリの割当がされているので、共有サーバーよりも安定した稼働が実現できる
中規模~大規模サイト/中規模CMS構築/中規模Webアプリケーションの展開に適している
ミドルウェアの構築、サーバーマシンセットアップが必要で、それなりの知識も要る
専用サーバーと比べると安価で利用できる場合もある
クラウドサーバー
ハードウェアから仮想化し、契約後でもハードウェア構成を変更できるサービス
webサーバー/DB用のサーバーを構築したり
アクセス負荷分散の仮想ロードバランサを設けたり
負荷状況により自動でサーバーを立ち上げる冗長化構成を整えたり
利用状況に応じて自由に構成を変化させたり
利用頻度が少ないときはディスク容量や割当メモリを減らしたり
負荷が上がってきたときはサーバーマシンスペックを向上できたり
という状況が作れる
その反面、運用にも高度な専門知識が求められるので、気軽に利用することは難しい
レンタルサーバーの比較
https://gyazo.com/484b46edb053a9e0347b84567bfa5fcb
クラウドサーバーの種類
https://gyazo.com/d2f11fdbcaa0cbac87c9a813a8a68f25
クラウドサーバーと物理サーバー
https://gyazo.com/9e952318ea5e03b90a8d8d124d285588
3つのサーバー環境
ユーザーと同等の体験のもとに開発を行うことができるようになり、予期せぬデータやバグに気づきやすくなる
開発サーバー
開発者用テスト環境
ローカル環境でしか動かない不具合にいち早く気がつくために重要
ステージングサーバー
プロジェクト内テスト環境
準本番環境として、本番前の最終確認用の環境
要件を満たしているか、実際の運用をするにあたって師匠がないかなどを確認・レビューする
プロダクションサーバー
本番環境
システムが製品として提供され、運用担当や実際のユーザーがシステムを利用する環境
運用における環境の選定ポイント
レンタルサーバーの種類、用意すべき環境以外にも考慮すること
- 安定性の高さ
- サポート体制
- データのバックアップ
- 新技術への対応