ホームページ  >  記事  >  バックエンド開発  >  カーネル: TCP: 時間待機バケット テーブルのオーバーフローの問題

カーネル: TCP: 時間待機バケット テーブルのオーバーフローの問題

WBOY
WBOYオリジナル
2016-08-08 09:26:501298ブラウズ

カーネル: TCP: 時間待機バケットテーブルのオーバーフロー問題

最近、elk を使用してシステムログを収集したところ、一部のマシンに多くのカーネルエラーがあることがわかりました
インターネット上の意見のほとんどは、カーネル パラメータ net.ipv4.tcp_max_tw_buckets を増やすというものです。でも、原理を説明していませんでした

よく考えたら、tw_bucketsの意味は、テーブルがいっぱいになった時間待ちのバケットテーブルです。
なぜいっぱいなのですか?

<code>netstat -an<span>|more</span></code>

time_out リンクを参照
通常、これは Web サーバーが原因でポート 80 が発生するため、キープアライブを考えるのが自然です。

その後、keepalivedをオフにして、tcp_max_tw_bucketsの値を2wに調整したところ、基本的にそのようなアラームは発生しませんでした。

特に、バックエンドの転送が必要な一部のクラスターの場合、維持される接続の数を減らすために、キープアライブをオフにすることが最善であると個人的に考えています。

上記では、カーネル: TCP: 時間待機バケット テーブル オーバーフローの問題を、関連する側面も含めて紹介しました。PHP チュートリアルに興味のある友人に役立つことを願っています。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
前の記事:nginx変数次の記事:nginx変数