
Ubuntu サーバーに許可される最大接続数を知るにはどうすればよいですか?
答え1
最大値は、最初にどのシステム制限に達したかに応じて動的に変化します。たとえば、プロセスごとに開いているファイルの最大数に、RAM + スワップに収まるプロセス数を掛けた値です。これは、考えられる制限の 1 つにすぎません。
答え2
ネットワークの観点から見ると、2^16 または 65535 個のソケット ポートがあり、2^16 または 65535 個の固有のクライアントが接続できます。つまり、他に制限がなければ (笑)、TCP のみの観点から見ると、最大 2^32 または 4294836225 個の固有の接続を持つことができます。
頑張ってください。:)
あなたの質問は、おそらくホスト上の多数の TCP 接続をどのように処理するかについて、より多くのヒントを与えているかもしれません。
これは、従来、C10k 問題と呼ばれています。(10,000 以上の接続は、問題が発生する基準として適切でした。)
ボックスを何千もの接続に拡張する方法を説明したドキュメントがあります。
http://www.kegel.com/c10k.html
少し古い情報ですが、私の経験では、ほとんどの Linux アプリは問題を軽減するために epoll を使用しています。
乾杯。