0

NodeJS サーバーを構成する方法を知りたいです。Web サイトで提案されているサービスを分離して、将来クラスターをマウントし、多数のサーバー (それぞれに 1 つの特別なタスクを許可) を持たせたいと考えています。

例 :

  1. 1 つのプロジェクトを持つ「メイン」サーバー: ExpressJS とデータベース
  2. 1 つのプロジェクトを持つ「コミュニケーション サーバー」: チャット + フォーラム
  3. その他のプロジェクト : 複雑な計算用 (チャートの生成 / 統計 / メール送信)

このタイプの複雑な Web サイトに対する別のアプローチについて説明していただけますか?

4

1 に答える 1

1

Benjamin Gruenbaym が言ったように、アーキテクチャは別の場所に属します。

個々のサーバーでアプリケーションをセットアップする方法について疑問がある場合は、いくつかの点に注意してください。

  1. NodeJS は単一のプロセスで実行されるため、理想的には CPU の 1 コアを占有する必要があります。同じサーバーでデータベースを実行する場合、それは別のコアです。そのため、十分な数のコアがある場合は、すべてのノード アプリケーションを同じサーバーでホストしても問題ない場合があります。
  2. 同じマシンで 2 つの異なる Node プロセスを実行するには、単純にそれらを 1 つずつ開始しますが、それらが異なるポートでリッスンしていることを確認してください。
  3. 後でアプリケーションを確実にスケールアウトできるようにするには、サービスを相互に識別するときに、IP アドレスではなくドメイン名を使用することが重要です。したがって、nodeJS アプリは、192.168.1.10 やその他の IP アドレスではなく、mydatabase.mycompany.com としてデータベースを認識している必要があります。これにより、後でデータベースを別のネットワーク アドレスに移動したり、ロード バランサーを使用したりできます。
于 2013-04-03T11:03:07.620 に答える