0

私のチームは、サーバー バックエンドで iphone アプリケーションを起動しました。アーキテクチャは次のようなものです。ユーザーが iPhone アプリと対話し、iPhone アプリが要求をサーバーに送信します。サーバーはリクエストに対して何らかの計算を実行し、レスポンスを返します。サーバーは、ユーザーの各対話に関与します。サーバー上でキャッシュは行われておらず、セッション処理もありません..

私の質問は、アプリケーションのアクティブ ユーザーが 30,000 から 50,000 の範囲にある場合、そのようなタイプのアプリケーション用にロード バランサーを構成する必要があるかということです。現在、クラウド サーバーが使用されており、データベースと apache サーバーは同じマシン上にあります。クラウドサーバーのサイズは 2GB です。ロード バランサーを使用する代わりに、クラウド サーバーのサイズを 2 GB から 10 GB または 15 GB より大きいサイズに変更した場合、それで十分でしょうか?

もう 1 つの質問は、サーバーのメモリ、要求/応答を監視するのに役立つ ubuntu 用の優れたツールがあるかどうかということです。

ありがとう

4

1 に答える 1

2

ロードバランサーが必要になる理由は少なくとも2つあります。

  • 1つのWebサーバーですべてのトラフィックを処理することはできません
  • 1つのWebサーバーに障害が発生した場合、停止を許容することはできません。

負荷テストを実行することで、最初の質問に答えることができます(そして答えるべきです)。優れた負荷テストツールについては、ApacheJMeterプロジェクトをご覧ください。

停止に耐えられない場合は、すべてのトラフィックを個別に処理できるロードバランサーの背後に少なくとも2つのWebサーバーが必要です(または、たとえば3つのWebサーバーがある場合は、それぞれがピークトラフィックの約60%を処理できる必要があります単一のWebサーバーを失うリスクを無効にするため)。

監視に関しては、実際には個別に質問する必要があります。私は個人的にZabbixを監視に使用しています。これはオープンソースです(一部のソリューションのように「機能不全のコミュニティ」や「エンタープライズ」ではありません)。学習曲線はやや急勾配ですが(最近の2.0のロールアウトで変更されたもので、十分に文書化されていないものもあります)、全体としては確実なソリューションです。Nagiosも非常に人気があり、一見の価値があります。

于 2012-10-04T17:37:21.333 に答える