高可用性負荷分散システムの構築: Nginx Proxy Manager のベスト プラクティス
高可用性ロード バランシング システムの構築: Nginx Proxy Manager のベスト プラクティス
はじめに:
インターネット アプリケーションの開発において、ロード バランシング システムは必須 必須コンポーネントの 1 つ。リクエストを複数のサーバーに分散することで、高い同時実行性と高可用性のサービスを実現できます。 Nginx Proxy Manager は一般的に使用される負荷分散ソフトウェアです。この記事では、Nginx Proxy Manager を使用して高可用性負荷分散システムを構築する方法を紹介し、いくつかの実践的なコード例を示します。
1. Nginx Proxy Manager をインストールします
-
Nginx Proxy Manager をダウンロードしてインストールします:
$ wget http://nginx.org/download/nginx-1.20.1.tar.gz $ tar -zxf nginx-1.20.1.tar.gz $ cd nginx-1.20.1 $ ./configure $ make $ sudo make install
ログイン後にコピー Nginx Proxy Manager を構成します:
$ cd /etc/nginx/ $ sudo vim nginx.conf
ログイン後にコピー次の内容を nginx.conf に追加します:
http { upstream backend { server server1.example.com; server server2.example.com; server server3.example.com; } server { listen 80; location / { proxy_pass http://backend; } } }
ログイン後にコピー
3. 高可用性を実現するには
高可用性を実現するには、複数の Nginx プロキシを構成します。サーバーを管理し、負荷分散に Nginx のアップストリーム モジュールを使用します。いくつかのベスト プラクティスを次に示します。
ドメイン名ラウンド ロビン (ラウンド ロビン) を使用します。
upstream backend { ip_hash; server server1.example.com; server server2.example.com; server server3.example.com; }
ログイン後にコピーip_hash ディレクティブを使用すると、すべてのクライアント リクエストが常に同じエンドから送信されるようになります。サーバー処理。
ヘルス チェックの追加:
upstream backend { server server1.example.com; server server2.example.com backup; server server3.example.com; health_check interval=5s; }
ログイン後にコピーhealth_check コマンドは、バックエンド サーバーが利用可能かどうかを定期的にチェックし、利用できないサーバーを負荷分散プールから一時的に削除して、正常なサーバーはリクエストの処理に参加します。
重みを使用する:
upstream backend { server server1.example.com weight=3; server server2.example.com weight=2; server server3.example.com weight=1; }
ログイン後にコピーweight ディレクティブは、バックエンド サーバーのパフォーマンスに応じて異なる重みを割り当てることができるため、より合理的な負荷分散を実現できます。
4. 監視とチューニング
実際のアプリケーションでは、Nginx Proxy Manager のパフォーマンスをリアルタイムで監視し、システムの安定性を向上させるために調整する必要があります。いくつかの提案があります:
Nginx ステータス モジュールを使用します:
nginx.conf に次の内容を追加します:location /nginx_status { stub_status; }
ログイン後にコピーhttp://your-domain にアクセスします。 /nginx_status、リクエストの総数、アクティブな接続の数などの Nginx ステータス情報を取得できます。
- 監視結果に基づくチューニング:
監視を通じて、接続数が制限を超えている、リクエストの応答時間が長すぎるなど、パフォーマンスのボトルネックを見つけることができます。監視結果に基づいて、worker_process数の増加やバックエンドサーバーの重みの調整など、Nginx Proxy Managerの構成をタイムリーに調整できます。
5. 概要
この記事では、Nginx Proxy Manager を使用して高可用性負荷分散システムを構築する方法を紹介し、いくつかの実践的なコード例を示します。合理的な構成と監視と調整を通じて、負荷分散システムのパフォーマンスと信頼性を向上させ、ユーザーにより良いサービス エクスペリエンスを提供できます。
参考資料:
- [Nginx 公式ドキュメント](http://nginx.org/en/docs/)
- [Nginx Wiki](https: //wiki.nginx.org/Main)
多読:
- [Nginx 実戦](https://book.douban.com/subject/26378178) / )
- 【Nginx高機能Webサーバー徹底解説】(https://book.douban.com/subject/6786600/)
以上が高可用性負荷分散システムの構築: Nginx Proxy Manager のベスト プラクティスの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

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

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

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

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

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

ホットトピック









Java フレームワークでは、リクエストを効率的に分散するために負荷分散戦略が重要です。同時実行の状況に応じて、戦略が異なればパフォーマンスも異なります。 ポーリング方式: 同時実行が少ない場合でも安定したパフォーマンス。加重ポーリング方式: パフォーマンスは、同時実行性が低い場合のポーリング方式と同様です。最小接続数の方法: 同時実行性が高い場合に最高のパフォーマンスが得られます。ランダムな方法: シンプルだがパフォーマンスは低い。 Consistent Hashing: サーバーの負荷を分散します。この記事では、アプリケーションのパフォーマンスを大幅に向上させるために、パフォーマンス データに基づいて適切な戦略を選択する方法を実際の事例と組み合わせて説明します。

PHP Web サイトを正常に展開して維持するには、次の手順を実行する必要があります。 Web サーバー (Apache や Nginx など) を選択する PHP をインストールする データベースを作成して PHP に接続する コードをサーバーにアップロードする ドメイン名と DNS を設定する Web サイトのメンテナンスを監視する手順には、PHP および Web サーバーの更新、Web サイトのバックアップ、エラー ログの監視、コンテンツの更新が含まれます。

Linux 管理者にとっての重要なタスクは、サーバーを違法な攻撃やアクセスから保護することです。デフォルトでは、Linux システムには、iptables、Uncomplicated Firewall (UFW)、ConfigServerSecurityFirewall (CSF) などの適切に構成されたファイアウォールが付属しており、さまざまな攻撃を防ぐことができます。インターネットに接続されているマシンはすべて、悪意のある攻撃のターゲットになる可能性があります。サーバーへの不正アクセスを軽減するために使用できる Fail2Ban と呼ばれるツールがあります。 Fail2Ban とは何ですか? Fail2Ban[1] は、ブルート フォース攻撃からサーバーを保護する侵入防止ソフトウェアです。 Python プログラミング言語で書かれています

今回は、Linux 環境に Nginx をインストールする方法を説明します。 ここで使用する Linux システムは CentOS7.2 です。 インストール ツールを準備します。 1. Nginx 公式 Web サイトから Nginx をダウンロードします。ここで使用するバージョンは 1.13.6.2. ダウンロードした Nginx を Linux にアップロードする ここでは例として /opt/nginx ディレクトリを使用します。 「tar-zxvfnginx-1.13.6.tar.gz」を実行して解凍します。 3. /opt/nginx/nginx-1.13.6 ディレクトリに切り替え、./configure を実行して初期設定を行います。次のプロンプトが表示された場合は、マシンに PCRE がインストールされていないため、Nginx がインストールする必要があることを意味します。

PHP セキュリティのベスト プラクティスを実装する方法 PHP は、動的でインタラクティブな Web サイトの作成に使用される最も人気のあるバックエンド Web プログラミング言語の 1 つです。ただし、PHP コードはさまざまなセキュリティ脆弱性に対して脆弱になる可能性があります。 Web アプリケーションをこれらの脅威から保護するには、セキュリティのベスト プラクティスを実装することが重要です。入力検証 入力検証は、ユーザー入力を検証し、SQL インジェクションなどの悪意のある入力を防止するための重要な最初のステップです。 PHP は、filter_var() や preg_match() などのさまざまな入力検証関数を提供します。例: $username=filter_var($_POST['username'],FILTER_SANIT

WordPressサイトファイルアクセスが制限されています:最近.txtファイルにアクセスできない理由のトラブルシューティング。一部のユーザーは、ミニプログラムのビジネスドメイン名を構成する際に問題に遭遇しました:�...

ローカル環境:redhat6.7系。 nginx1.12.1、php7.1.0、コードは yii2 フレームワークの問題を使用しています。ローカル Web サイトは elasticsearch サービスを使用する必要があります。 PHP がローカル サーバー上に構築された elasticsearch を使用する場合、ローカル負荷は正常です。 AWS の elasticsearch サービスを使用すると、ローカル サーバーの負荷が高すぎることがよくあります。 nginx と php のログを確認して、例外が見つからないことを確認します。システム内の同時接続数も多くありません。そんなとき、上司から教えてもらったstrace診断ツールを思い出しました。デバッグプロセス: PHP サブプロセス idstrace- を検索します。

同じシステムで複数のPHPバージョンを同時に実行することは、特に異なるプロジェクトがPHPの異なるバージョンに依存する場合、一般的な要件です。同じようになる方法...
