0

DotCloud でのこのセットアップに関するあなたの経験と、それぞれについての他の一般的な経験について知りたいです。私の質問は、

  1. どのようにスケーリングしますか?
  2. このセットアップでのNginxの役割は何ですか?リクエストのディスパッチのためだけですか?それとも負荷分散もサポートしていますか?
  3. MongoDB はどのくらいのメモリを消費しますか? MongoDB にメモリ管理の最適化はありますか?
  4. NodeJS はどのくらいのメモリを消費しますか?

すべてがアプリケーションの種類に依存することはわかっていますが、NodeJS は高スループットのソリューションであるため、実際に必要なメモリは通常の Web サーバーよりも少ない (?) はずです。

4

1 に答える 1

2

@Ken Cochraneが言ったように、Nodeサービスにはnginxがなく、必要ありません。そして、ノードを介して静的サービスを追加するのではなく、本当にnginxで配信したい静的コンテンツがある場合は、おそらくそれを望まないでしょう。

ロード バランシングは、トラフィックを別のインスタンスまたはスケーリングされたサービスにリダイレクトするゲートウェイによって行われます。これは、サービスをスケーリングした場合です。

アプリがスケーリングするように設計されている限り、Node.js は完全にスケーリングします。たとえば、セッションがキャッシュやデータベースで共有されていることを注意深く確認している場合、魔法のようなスケーリングはありません。ノード サービスのメモリには何も保存されないため、1 つのインスタンスを失うことが問題にならない場合、データベースの再接続を処理する場合は、非常にうまくスケーリングできる可能性があります。

mongoDB がどれだけ使用するかは、アプリに完全に依存しているとは言えません。クローラーをやっている人から、それだけの RAM を使用する単純なものまで、巨大な mongoDB があります。ただし、それはアプリの成功次第です。これはとどまるのが本当に難しいです。しかし、おそらくしばらくの間 1G に到達することはありません。

ノードについて。インスタンス間で共有されないため、メモリに何も保存したくありません。そのため、非常に特別なことをしていない限り、Node インスタンスは多くのメモリを使用するべきではありません。通常のアプリでは 256MB で十分です。

于 2012-10-11T01:18:15.360 に答える