実際に運営する環境はレンタルサーバーにて調達したいと考えているのですが、いったいどのくらいのサーバーがあればいいのかがわかりません。専用やVPSなどのレンタル形態の違いもありますし、サーバーのスペックの違いもあります。
しかし、業者は早めに決めてサーバーにかかるコストを確定しなければいけません。そのためには、どういう情報をもとにして、業者の選定を進めていけばいいのでしょうか。一般論でかまいませんので、サーバー業者の選定の考え方を教えてください。
以上、よろしくお願いします。
専用やVPSの場合,契約内容によって月刊転送量と言う物が定められている場合が多いです.
例えば,月に30GBまでと契約内容の場合ですと,単純計算で1日に約1GB転送できることになります.
で,転送量の計算方法ですが,
転送量 = アクセス数 × ページのサイズの平均(画像などを含む)
アクセス数 = 訪問ユーザ数 × ページ遷移回数
で計算できます.
n_maco2さんの運営しようとしているサービスが,
1日に1000人のユーザが訪問して,
1回のサービスを受ける度に10回のページ遷移があり,
ページの平均サイズが100kbyteの場合だとするならば,
1日の転送量は1000×10×100kByte=1GByteになり,
最低でも月刊転送量が30GBのサーバを契約する必要があります.
独自ドメインをとった会社にある程度縛られますから
もうその時点で、選択肢は少なくなります。
予算が許すなら、専用サーバーでしょう。
サクラインターネットをお勧めします。
トラフック量が増えていけば上位のサービスに簡単に移れそう
ですし、負荷分散のノウハウもあるようなので、無難かと思い
ます。
この私の考え方だと、最初は予算をケチって小さめにしておいて
その後のトラフックによってサーバーを移動させていくという
方法論です。もちろん、お金がその分上がっていきますが、
どれぐらいでどうでしょうか?
逆にある程度のアクセス数とトラフックが分かっていたら、
それにあわせて買うだけだと思います。
1台のサーバーで処理できないとなると負荷分散技術が
必要なのですが、サクラインターネットにはノウハウがあると
思うので、ここらあたりまで対応できます。
NTTデータとかもっと有名どころでもいいですが、高すぎます。
ご回答ありがとうございます^^
> 逆にある程度のアクセス数とトラフックが分かっていたら、
>
> それにあわせて買うだけだと思います。
それにあわせて買う、とは、具体的にはどのようにすればよろしいのでしょうか。そのあたり詳しく教えていただければと思います。
専用やVPSの場合,契約内容によって月刊転送量と言う物が定められている場合が多いです.
例えば,月に30GBまでと契約内容の場合ですと,単純計算で1日に約1GB転送できることになります.
で,転送量の計算方法ですが,
転送量 = アクセス数 × ページのサイズの平均(画像などを含む)
アクセス数 = 訪問ユーザ数 × ページ遷移回数
で計算できます.
n_maco2さんの運営しようとしているサービスが,
1日に1000人のユーザが訪問して,
1回のサービスを受ける度に10回のページ遷移があり,
ページの平均サイズが100kbyteの場合だとするならば,
1日の転送量は1000×10×100kByte=1GByteになり,
最低でも月刊転送量が30GBのサーバを契約する必要があります.
ご回答ありがとうございました。
仮定でユーザーを決めて転送量ベースで上限値を求める感じなんですね。
違う視点、たとえばCPUのスペックやメモリの量などを基準に考えた場合は、どうなんでしょうか。サービス毎によってまったく違ってくるので、そもそもスペックを基準に考えることは間違いなんでしょうか。
>違う視点、たとえばCPUのスペックやメモリの量などを基準に考えた場合は、どうなんでしょうか。サービス毎によってまったく違ってくるので、そもそもスペックを基準に考えることは間違いなんでしょうか。
間違いではありません。
システムの設計段階では、システムの負荷と、ネットワークの負荷をベースとして算出します。
計算方法としては、プロセスあたりの処理時間、メモリ消費量、及びシステムの必要ディスク量、及びネットワーク負荷です。 もちろん、単位時間あたりのリクエスト上限も設計段階で確定しておきます。
大規模DBからの検索を中心とするようなサービスであれば、ネットワーク負荷よりもCPUとメモリ量になりますから、ネットワークトラフィックベースの算出では合いません。
簡単なのは自前のサーバで1プロセスを単純に動作させた場合の応答時間をベースとして、要求される応答時間(許容応答時間)をこれで除して、サーバのCPUスペックのラインを算出できるでしょう。 VPSであれば、CPU性能はサーバのCPU性能を同居数で除した値の70%程度でしょうか。
また、メモリについても、要求される応答時間とDB規模によっては、メモリ上に表を展開しておける程度の容量を確保しなければなりません。 もちろん、同時実行が想定されるプロセス数がメモリに収まるようにするのは基本です。 これも、実際に実行して消費メモリを算定するのが簡単でしょう。
後は、ディスクのI/O性能ですね。 VPSはこの性能が結構低いので、DBなどをディスクから順次探索等というのはイマイチです。
待ち行列等の考えを用いて、単位時間あたりのリクエスト量から、サービスに要求される応答時間を満足するラインを算定しましょう。
ご回答ありがとうございます^^
スペックの計算は非常に難しいですね・・・正直なところ、もう少し詳しく情報がないとどうやって突き詰めていったものか、見当がつきません。
何か勉強になるサイトや、書籍などございませんでしょうか。もしあれば是非お教えください。
よろしくお願いいたします。
ご回答ありがとうございました。
仮定でユーザーを決めて転送量ベースで上限値を求める感じなんですね。
違う視点、たとえばCPUのスペックやメモリの量などを基準に考えた場合は、どうなんでしょうか。サービス毎によってまったく違ってくるので、そもそもスペックを基準に考えることは間違いなんでしょうか。