NodeJS アプリケーションの負荷分散に Nginx を使用する
Aug 08, 2016 am 09:30 AM「NodeJS アプリケーションの負荷分散に Nginx を使用する」
著者: chszs 転載の際は明記をお願いします。ブログのホームページ: http://blog.csdn.net/chszs
負荷分散により、ユーザーのリクエストを複数のサーバーに割り当てて処理できるため、多数のユーザーのアクセスのサポートが実現します。負荷分散アーキテクチャを次の図に示します。
複雑な Web アプリケーションの場合、フロントエンドの負荷分散に Nginx を使用するのは当然のことです。
次に、Nginx を使用して NodeJS アプリケーションの負荷分散を行います。
1. Nginx を構成する
nginx.conf を変更します:
.... upstream sample { server 127.0.0.1:3000; server 127.0.0.1:3001; keepalive 64; } server { listen 80; .... server_name 127.0.0.1; .... location / { proxy_redirect off; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header Host $http_host; proxy_set_header X-NginX-Proxy true; proxy_set_header Connection ""; proxy_http_version 1.1; proxy_pass http://sample; } }
2. NodeJS サーバーを構築します
var http = require('http'); var morgan = require('morgan'); var server1 = http.createServer(function (req, res) { console.log("Request for: " + req.url + "-- port 3000 "); res.writeHead(200, {'Content-Type': 'text/plain'}); res.end('Hello Node.js\n'); }).listen(3000, "127.0.0.1"); var server2 = http.createServer(function (req, res) { console.log("Request for: " + req.url + "-- port 3001 "); res.writeHead(200, {'Content-Type': 'text/plain'}); res.end('Hello Node.js\n'); }).listen(3001, "127.0.0.1"); server1.once('listening', function() { console.log('Server running at http://127.0.0.1:3000/'); }); server2.once('listening', function() { console.log('Server running at http://127.0.0.1:3001/'); });
これで、http://127.0.0.1 にアクセスできるようになります
Server running at http://127.0.0.1:3000/ Server running at http://127.0.0.1:3001/ Request for: /-- port 3001 Request for: /favicon.ico-- port 3000 Request for: /favicon.ico-- port 3001 Request for: /-- port 3000 Request for: /favicon.ico-- port 3001 Request for: /favicon.ico-- port 3000 Request for: /-- port 3001 Request for: /favicon.ico-- port 3000 Request for: /favicon.ico-- port 3001 Request for: /-- port 3000 Request for: /favicon.ico-- port 3001 Request for: /favicon.ico-- port 3000
上記では、関連する側面も含めて、NodeJS アプリケーションの負荷分散のための Nginx の使用法を紹介しました。PHP チュートリアルに興味のある友人にとって役立つことを願っています。

人気の記事

人気の記事

ホットな記事タグ

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











Nginx Proxy Manager でのコンテナとマイクロサービスのデプロイ戦略

Web ページのリダイレクトの一般的なアプリケーション シナリオを理解し、HTTP 301 ステータス コードを理解する

Nginx プロキシ マネージャー チュートリアル: クイック スタート ガイド

Nginx Proxy Managerを使用して複数のサーバーの負荷分散を実現する方法

Nginx プロキシ マネージャーを使用して HTML ページをすばやくキャッシュする方法
