検索
ホームページ運用・保守Linuxの運用と保守LinuxでNginxの同時接続数や接続状況を確認する方法を詳しく紹介

Linux 同時接続数やNginxなどの接続ステータスを確認します。

1. Web サーバー (Nginx Apache) の同時リクエスト数とその TCP 接続ステータスを確認します:


netstat -n | awk '/^tcp/ {++state[$NF] } END { for(

key

in state) print key,"t",state[key]}'戻り結果は通常次のとおりです:

netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'
その他のパラメータの説明:

CLOSED: アクティブまたは進行中の接続はありません

LIST

JP: サーバーは着信を待っています SYN_RECV: 接続リクエストが到着し、確認を待っています

SYN_SENT: アプリケーションが開始され、接続をオープンしています

ESTABLISHED: 通常のデータ転送ステータス

FIN_WAIT1: アプリケーションは完了したと言います

FIN_WAIT2: 相手側が解放に同意しました

ITMED_WAIT: すべての

グループ

が終了するのを待ちます CLOSING: 両側が同時に閉じようとします

TIME_WAIT:相手側がリリースを初期化しました

LAST_ACK: すべてのグループが終了するのを待ちます

一般的に使用される 3 つのステータスは次のとおりです: ESTABLISHED は通信中を意味し、TIME_WAIT はアクティブなシャットダウンを意味し、CLOSE_WAIT はパッシブなシャットダウンを意味します。

TCP プロトコルでは、確立された接続について、正常に切断するにはネットワーク上の双方が 4 ウェイ ハンドシェイクを実行する必要があると規定しています。これらの手順のいずれかが欠けている場合、接続は一時停止アニメーション状態になり、リソースが占有されます。接続自体では解放されません。ネットワーク サーバー プログラムは同時に多数の接続を管理する必要があるため、無駄な接続が完全に切断されていることを確認する必要があります。そうしないと、大量の切断された接続が大量のサーバー リソースを浪費します。多くの TCP 状態の中で、CLOSE_WAIT と TIME_WAIT という 2 つの最も注目すべき状態があります。

TIME_WAIT

TIME_WAIT は、リンクがアクティブに閉じられ、2MSL 時間、約 4 分間待機すると形成されます。主に最後の ACK が失われるのを防ぐためです。 TIME_WAIT には非常に長い時間がかかるため、サーバーは閉じられるアクティブな接続の数を最小限に抑えるように努める必要があります。

CLOSE_WAIT

CLOSE_WAIT は、接続を受動的に閉じることによって形成されます。 TCP ステート マシンによれば、サーバーはクライアントから送信された FIN を受信すると、TCP 実装に従って ACK を送信し、CLOSE_WAIT 状態に入ります。ただし、サーバーが close() を実行しない場合、CLOSE_WAIT から LAST_ACK に移行できず、システム内に CLOSE_WAIT 状態の接続が多数存在します。現時点では、システムが読み取りおよび書き込み操作の処理でビジー状態で、FIN を受信した接続を閉じていない可能性があります。この時点で、recv/read は FIN 接続ソケットを受信して​​いるため、0 を返します。

なぜ TIME_WAIT 状態が必要なのでしょうか?

最後の ACK が失われた場合、サーバーは FIN を再送信します。クライアントは、最後の ACK を再送信できるように TCP ステータス情報を維持する必要があります。そうでない場合、サーバーは RST を送信し、エラーが発生したと判断します。発生した。 TCP 実装では、両方向の接続 (全二重がクローズ) を確実に終了する必要があり、クライアントは最終 ACK の再送信に直面する可能性があるため、TIME_WAIT 状態に入らなければなりません。

なぜ TIME_WAIT 状態をこれほど長い間 2MSL に保つ必要があるのでしょうか?

TIME_WAIT 状態が十分な時間維持されない場合 (たとえば、2MSL 未満)、最初の接続は正常に終了します。 2 番目の接続が同じ関連付けられた 5 つ組で表示され、最初の接続からの重複したパケットが到着し、2 番目の接続を妨害します。 TCP 実装では、特定の接続からの重複メッセージが接続終了後に表示されるのを防ぐ必要があるため、TIME_WAIT 状態を十分な長さ (2MSL) 維持します。そうすれば、接続の対応する方向の TCP メッセージは完全に応答されるか、破棄されます。 2 番目の接続を確立するときに混乱することはありません。

TIME_WAIT および CLOSE_WAIT ステータス ソケットが多すぎる

サーバーに例外がある場合、80 ~ 90% の確率で次の 2 つの状況になります:

1. サーバーは大量の TIME_WAIT ステータスを維持します

2。サーバーは大量の CLOSE_WAIT ステータスを維持します。簡単に言うと、過度の CLOSE_WAIT は、

接続処理

の不適切な受動的クローズによって引き起こされます。 Linuxによってユーザーに割り当てられるファイルハンドルは有限であり、TIME_WAITとCLOSE_WAITの2つの状態が常に維持されるということは、常に対応する数のチャネルが占有されることを意味し、「力を出さずにピットを占有する」ことになるハンドル数の上限に達すると、新しいリクエストを処理できなくなり、Too Many Open

File

例外が多数発生し、Tomcat がクラッシュします。

以上がLinuxでNginxの同時接続数や接続状況を確認する方法を詳しく紹介の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
Linuxのメンテナンスモード:それを使用する時期と理由Linuxのメンテナンスモード:それを使用する時期と理由Apr 25, 2025 am 12:15 AM

Linuxメンテナンスモードを使用するタイミングと理由:1)システムが起動するとき、2)主要なシステムの更新またはアップグレードを実行するとき、3)ファイルシステムメンテナンスを実行するとき。メンテナンスモードは、安全で制御された環境を提供し、運用上の安全性と効率を確保し、ユーザーへの影響を減らし、システムセキュリティを強化します。

Linux:必須コマンドと操作Linux:必須コマンドと操作Apr 24, 2025 am 12:20 AM

Linuxの不可欠なコマンドは次のとおりです。1.LS:リストディレクトリの内容; 2.CD:作業ディレクトリを変更します。 3.mkdir:新しいディレクトリを作成します。 4.RM:ファイルまたはディレクトリを削除します。 5.CP:ファイルまたはディレクトリをコピーします。 6.MV:ファイルまたはディレクトリの移動または名前を変更します。これらのコマンドは、カーネルと対話することにより、ユーザーがファイルとシステムを効率的に管理するのに役立ちます。

Linux操作:ファイル、ディレクトリ、およびアクセス許可の管理Linux操作:ファイル、ディレクトリ、およびアクセス許可の管理Apr 23, 2025 am 12:19 AM

Linuxでは、ファイルおよびディレクトリ管理ではLS、CD、MKDIR、RM、CP、MVコマンドを使用し、許可管理はCHMOD、CHOWN、およびCHGRPコマンドを使用します。 1。LS-Lなどのファイルおよびディレクトリ管理コマンドは、詳細情報、MKDIR-Pを再帰的に作成するディレクトリを再帰的に作成します。 2。CHMOD755FILEセットファイル許可、CHOWNUSERFILEファイル所有者、CHGRPGROUPFILEの変更ファイルグループなどの許可管理コマンド。これらのコマンドは、ファイルシステム構造とユーザーおよびグループシステムに基づいており、システムコールとメタデータを介して動作および制御します。

Linuxのメンテナンスモードとは何ですか?説明したLinuxのメンテナンスモードとは何ですか?説明したApr 22, 2025 am 12:06 AM

メンテナンスメモデンリンリンアスピアルブーテンビロンメント、criticalsystemmaincencetasks.itallowsadministratorstopertopertopertopersetstingtingpasswords、Repainingfilesystems、およびRecoveringfrombootfailurureSinaMinimalenvironment.

Linux:基本的な部分に深く潜りますLinux:基本的な部分に深く潜りますApr 21, 2025 am 12:03 AM

Linuxのコアコ​​ンポーネントには、カーネル、ファイルシステム、シェル、ユーザー、カーネルスペース、デバイスドライバー、パフォーマンスの最適化とベストプラクティスが含まれます。 1)カーネルは、ハードウェア、メモリ、プロセスを管理するシステムのコアです。 2)ファイルシステムはデータを整理し、Ext4、BTRFS、XFSなどの複数のタイプをサポートします。 3)シェルは、ユーザーがシステムと対話するためのコマンドセンターであり、スクリプトをサポートします。 4)システムの安定性を確保するために、ユーザースペースをカーネルスペースから分離します。 5)デバイスドライバーは、ハードウェアをオペレーティングシステムに接続します。 6)パフォーマンスの最適化には、システム構成とベストプラクティスのチューニングが含まれます。

Linuxアーキテクチャ:5つの基本コンポーネントを発表しますLinuxアーキテクチャ:5つの基本コンポーネントを発表しますApr 20, 2025 am 12:04 AM

Linuxシステムの5つの基本コンポーネントは次のとおりです。1。Kernel、2。Systemライブラリ、3。Systemユーティリティ、4。グラフィカルユーザーインターフェイス、5。アプリケーション。カーネルはハードウェアリソースを管理し、システムライブラリは事前コンパイルされた機能を提供し、システムユーティリティはシステム管理に使用され、GUIは視覚的な相互作用を提供し、アプリケーションはこれらのコンポーネントを使用して機能を実装します。

Linux操作:メンテナンスモードを利用しますLinux操作:メンテナンスモードを利用しますApr 19, 2025 am 12:08 AM

Linuxメンテナンスモードは、Grubメニューから入力できます。特定の手順は次のとおりです。1)GRUBメニューのカーネルを選択し、「E」を押して編集し、2)「Linux」行の最後に「シングル」または「1」を追加し、3)Ctrl Xを押して開始します。メンテナンスモードは、システム修理、パスワードリセット、システムのアップグレードなどのタスクに安全な環境を提供します。

Linux:リカバリモード(およびメンテナンス)に入る方法Linux:リカバリモード(およびメンテナンス)に入る方法Apr 18, 2025 am 12:05 AM

Linux Recoveryモードを入力する手順は次のとおりです。1。システムを再起動し、特定のキーを押してGrubメニューを入力します。 2。[RecoveryMode)でオプションを選択します。 3. FSCKやrootなどの回復モードメニューで操作を選択します。リカバリモードを使用すると、シングルユーザーモードでシステムを開始し、ファイルシステムのチェックと修理を実行し、構成ファイルを編集し、システムの問題を解決するのに役立ちます。

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衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。

PhpStorm Mac バージョン

PhpStorm Mac バージョン

最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。

MantisBT

MantisBT

Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。

VSCode Windows 64 ビットのダウンロード

VSCode Windows 64 ビットのダウンロード

Microsoft によって発売された無料で強力な IDE エディター