誰もが次のような性質の質問にどのように近づくのか興味があります。アプリケーションA(eコマースサイトなど)を作成する必要があります。それは技術B(例えばjava)を使用するでしょう。 C(例えば200)人の同時ユーザーをサポートしなければならない。どのような種類のハードウェアが必要ですか?Xユーザー/トランザクションをサポートするために必要なハードウェアの見積もり方法は?
ハードウェア仕様には、必要なCPUの数と基本的な応答のためのメモリ容量が含まれます。
私の例を単純化するために、私はJava技術を私の質問に固執しますが、私は本当にテクノロジーに中立なアドバイスをしたいと思います。
私は、このような質問にはさらに多くの要素が含まれることを理解しています。例えば、Wicket vs Struts vs Spring、純粋なEJB J2EEアーキテクチャ、多数の分散層(1つのボックス設定または3つの層設定)などがあります。
ただし、特定のテクノロジに関する事前の経験がない(または、必要なハードウェアが何であるかを調べるための負荷テストを行う機会がない)可能性があり、そのような質問は常に最初のプロジェクトのディスカッション(そして、答えは前進するためのベースラインとして不可欠です)、どうやって答えを出すのですか?
私は、ユーザーセッションごとにメモリ量を見積もることでメモリの問題を解決することを考えましたが、フレームワーク/仮想マシンのオーバーヘッドが確実に発生します。
しかし、一般に、私はこの質問に常に良い解決策を出すように思えません。負荷テストは間違いなくそれを解決するのに役立ちますが、その時点でプロジェクトはすでに準備が整っています。これはクライアントが通常プロジェクトにコミットする前に回答を望む質問です。
コミュニティがこれに対する良いアプローチについてアドバイスできることを祈ってください。
ありがとうございました。