検索
ホームページ運用・保守Nginxnginx がリクエスト数を処理する方法

nginx は軽量かつ強力で、数百の同時実行に耐えることができます。Ddos 攻撃は nginx 自体の動作にはほとんど影響しません。しかし、リクエストが多すぎるとバックエンド サービスに影響を及ぼし始めます。

したがって、攻撃がバックエンドサーバーに到達するのを防ぐために、nginx で対応する制限を行う必要があります。 ここでは、単位時間あたりのリクエスト数を制限できる ngx_http_limit_req_module モジュールについて説明します。

nginx がリクエスト数を処理する方法

モジュールのインストールの簡単な手順はここでは紹介しませんが、設定パラメータを紹介します。

1。nginxはリクエストの数を制限しますngx_http_limit_req_moduleモジュール#定義は制限のパラメーターです。 httpで設定します。

limit_req_zone

構文:limit_req_zone $variablezone=name:size rate=rate;

デフォルト値: none

設定セクション: http

例:

limit_req_zone $binary_remote_addr zone=one:10m rate=1r/s;

説明: エリア名は 1 つ、サイズは 10m で、処理される平均リクエスト頻度は 1 秒あたり 1 件を超えることはできません。

キー値はクライアント IP です。

$binary_remote_addr 変数を使用すると、各ステータス レコードのサイズを 64 バイトに削減できるため、1M のメモリに約 16,000 の 64 バイト レコードを保存できます。

制限されたドメインのストレージ スペースが使い果たされると、サーバーは後続のすべてのリクエストに対して 503 (Service Temporarily Unavailable) エラーを返します。

速度は、1 秒あたりに処理されるリクエストの数と 1 分あたりに処理されるリクエストの数に設定できます。値は整数である必要があるため、1 秒あたり 1 リクエスト未満と 1 リクエストを指定する必要がある場合は、 2秒で「30r/m」が使用可能になります。

2. 必要なログ レベルを設定します。

limit_req_log

構文:limit_req_log_level info | Notice | warn | error;

デフォルト値:limit_req_log_level error;

設定セクション: http、server、location

頻度が高すぎるためにサーバーがリクエストの処理を拒否または遅延した場合、対応するレベルのログが記録されることがあります。遅延ログのログ レベルは拒否のログ レベルより 1 レベル低くなります。たとえば、「limit_req_log_level Notice」が設定されている場合、遅延ログは情報レベルになります。

3. エラーの戻り値を設定します。

構文:limit_req_status code;

デフォルト値:limit_req_status 503;

設定セクション:http、server、location

このコマンドは次のとおりです。 1.3 バージョン .15 で導入されました。拒否されたリクエストの応答ステータス コードを設定します。

4. 対応する共有メモリ制限ドメインと、処理を許可するリクエストの最大数を設定します。

構文:limit_reqzone=name[burst=number][nolay];

デフォルト値:—

設定セクション:http、server、location

limit_req_zone $binary_remote_addr zone=ttlsa_com:10m rate=1r/s;
server {
    location /www.ttlsa.com/ {
        limit_req zone=ttlsa_com burst=5;
    }
}

平均して 1 秒あたり 1 リクエスト以下に制限し、同時に周波数制限を超えるリクエストを 5 リクエスト以下に制限します。

これ以上リクエストを遅延させたくない場合は、次のような nolay パラメータを使用できます。

limit_req zone=ttlsa_com burst=5 nodelay;

以上がnginx がリクエスト数を処理する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
NGINX:最新のWebアプリケーション用の汎用ツールNGINX:最新のWebアプリケーション用の汎用ツールApr 11, 2025 am 12:03 AM

nginxisentialformodernwebapplicationsdueToitsRolesasareverseproxy、loadbalancer、andwebserver、weberporformanceandscalability.1)itactsasaReverseproxy、拡張、およびパフォーマンスを強化し、パフォーマンスを強化し、積極的に積極的なものを増やします

nginx SSL/TLS構成:HTTPSでWebサイトを保護しますnginx SSL/TLS構成:HTTPSでWebサイトを保護しますApr 10, 2025 am 09:38 AM

NGINXを通じてWebサイトのセキュリティを確保するには、次の手順が必要です。1。基本的な構成を作成し、SSL証明書と秘密鍵を指定します。 2。構成を最適化し、HTTP/2を有効にし、OCSPSTAPLING。 3.証明書パスや暗号化スイートの問題などの一般的なエラーをデバッグします。 4。let'sencryptの使用やセッションの多重化など、アプリケーションのパフォーマンス最適化の提案。

Nginxインタビューの質問:DevOps/System管理インタビューをAceNginxインタビューの質問:DevOps/System管理インタビューをAceApr 09, 2025 am 12:14 AM

Nginxは、高性能のHTTPおよびリバースプロキシサーバーであり、高い並行接続の取り扱いに優れています。 1)基本的な構成:ポートを聞いて静的ファイルサービスを提供します。 2)高度な構成:逆プロキシとロードバランシングを実装します。 3)デバッグスキル:エラーログを確認し、構成ファイルをテストします。 4)パフォーマンスの最適化:GZIP圧縮を有効にし、キャッシュポリシーを調整します。

nginxキャッシュテクニック:ウェブサイトのパフォーマンスの向上nginxキャッシュテクニック:ウェブサイトのパフォーマンスの向上Apr 08, 2025 am 12:18 AM

Nginxキャッシュは、次の手順を通じてWebサイトのパフォーマンスを大幅に改善できます。1)キャッシュ領域を定義し、キャッシュパスを設定します。 2)キャッシュ有効期間を構成します。 3)異なるコンテンツに従って異なるキャッシュポリシーを設定します。 4)キャッシュストレージと負荷分散を最適化します。 5)キャッシュ効果を監視およびデバッグします。これらの方法により、Nginxキャッシュはバックエンドサーバーの圧力を軽減し、応答速度とユーザーエクスペリエンスを向上させることができます。

Dockerを使用したNginx:コンテナ化されたアプリケーションの展開とスケーリングDockerを使用したNginx:コンテナ化されたアプリケーションの展開とスケーリングApr 07, 2025 am 12:08 AM

DockerComposeを使用すると、Nginxの展開と管理が簡素化され、DockerswarmまたはKubernetesをスケーリングすることは一般的な慣行です。 1)DockerComposeを使用してNginxコンテナを定義および実行する、2)DockerswarmまたはKubernetesを介してクラスター管理と自動スケーリングを実装します。

Advanced Nginx構成:マスタリングサーバーブロックとリバースプロキシAdvanced Nginx構成:マスタリングサーバーブロックとリバースプロキシApr 06, 2025 am 12:05 AM

nginxの高度な構成は、サーバーブロックとリバースプロキシを介して実装できます。1。サーバーブロックにより、複数のWebサイトを1つの場合に実行することができます。各ブロックは個別に構成されます。 2.逆プロキシは、リクエストをバックエンドサーバーに転送して、負荷分散とキャッシュアクセラレーションを実現します。

nginxパフォーマンスチューニング:速度と低レイテンシの最適化nginxパフォーマンスチューニング:速度と低レイテンシの最適化Apr 05, 2025 am 12:08 AM

NGINXのパフォーマンスチューニングは、ワーカープロセスの数、接続プールサイズの数、GZIP圧縮とHTTP/2プロトコルの有効化、およびキャッシュとロードバランスを使用することで実現できます。 1.ワーカープロセスの数と接続プールサイズを調整します:worker_processesauto;イベント{worker_connections1024;}。 2。GZIP圧縮とhttp/2プロトコルを有効にします:http {gzipon; server {risten43sslhttp2;}}。 3。キャッシュ最適化:http {proxy_cache_path/path/to/cachelevels = 1:2k

Nginxセキュリティ硬化:Webサーバーを攻撃から保護しますNginxセキュリティ硬化:Webサーバーを攻撃から保護しますApr 04, 2025 am 12:06 AM

NGINXセキュリティの強化は、次の手順を通じて達成できます。1)すべてのトラフィックがHTTPSを介して送信されることを確認する、2)HTTPヘッダーを構成してコミュニケーションセキュリティを強化するように設定します。これらの測定は、Nginxサーバーのセキュリティを効果的に改善できます。

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

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

ホットツール

EditPlus 中国語クラック版

EditPlus 中国語クラック版

サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

SublimeText3 Linux 新バージョン

SublimeText3 Linux 新バージョン

SublimeText3 Linux 最新バージョン

WebStorm Mac版

WebStorm Mac版

便利なJavaScript開発ツール

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

AtomエディタMac版ダウンロード

AtomエディタMac版ダウンロード

最も人気のあるオープンソースエディター