1、nginxのを実行しているワーカー・プロセスの数
労働者の数は、CPUコアやコア×2のnginxの一般的な設定を実行中のプロセス。トイレ-l |あなたは、CPUコアの数がわからない場合は、/ procの/ cpuinfoのファイルはgrep ^プロセッサは/ proc / cpuinfoをあなたもチェックすることができ、1はそれを参照してください押した後にトップに命令することができます
[root@lx~]# vi/usr/local/nginx1.10/conf/nginx.conf
worker_processes 4;
[root@lx~]# /usr/local/nginx1.10/sbin/nginx-s reload
[root@lx~]# ps -aux | grep nginx |grep -v grep
root 9834 0.0 0.0 47556 1948 ? Ss 22:36 0:00 nginx: master processnginx
www 10135 0.0 0.0 50088 2004 ? S 22:58 0:00 nginx: worker process
www 10136 0.0 0.0 50088 2004 ? S 22:58 0:00 nginx: worker process
www 10137 0.0 0.0 50088 2004 ? S 22:58 0:00 nginx: worker process
www 10138 0.0 0.0 50088 2004 ? S 22:58 0:00 nginx: worker process
2、nginxのは、CPUアフィニティを実行しています
例えば、4コア構成:
worker_processes 4;
worker_cpu_affinity 0001 0010 0100 1000
例えば、8コア構成:
worker_processes 8;
worker_cpu_affinity 00000001 00000010 00000100 0000100000010000 00100000 01000000 10000000;
オープン8以上の8のパフォーマンスを向上させることがないだろう、と8つのプロセスに十分なので、安定性は、低くなるまでworker_processes。
3、開いているファイルのnginxの最大数
worker_rlimit_nofile 65535;
ディレクティブはnginxのプロセスがファイル記述子の数を開いたとき、理論値を数値にnginxのプロセスの数で割った(のulimit -n)ファイルを開かされなければならないが、nginxの割り当て要求が最善とのulimitので、均一になるようではないことを、この手段一貫性のある値-n。
注:設定ファイルリソースの制約がセットにすべてのユーザーに対して、各ユーザーroot /ユーザーなどの設定を/etc/security/limits.confを、または*することができます。
* soft nofile 65535
* hard nofile 65535
あなたは(のulimit -n)力にログイン
4、nginxのイベント処理モデル
events {
use epoll;
worker_connections 65535;
multi_accept on;
}
nginxのは、ファイルディスクリプタイベントモデル、高い処理効率を使用します。
work_connections単一のワーカープロセスが終了顧客に接続の最大数を可能にするために、この値は、サーバのパフォーマンスとメモリに応じて開発することが一般的であり、実際の最大値は、ワーカープロセスのwork_connectionsの数で乗算されます。
私たちは、実際には65,535十分に満たし、これらの値は、そのような大量に到達するために、同時ウェブサイトによって複雑に考えられている、それは主要な駅まで考えることができます!
多くの接続として受け入れの通知を受けた後、新しい接続をnginxの教えmulti_accept、デフォルトではオンになっている、との接続、唯一の労働者は目覚めるで接続、他の中を処理するために、シリアルに、上に多くの労働者を、それを設定します休止状態は、接続を処理するために並列に、複数のワーカーをオフに設定した後、ある接続は、接続が割り当てられるまで、休止接続を継続する権利がない、作業者のすべてを目覚めさせます。ときに、あなたのサーバ接続の多くは、このパラメータのターンが減少し、負荷を持つことになりますが、効率のための大規模サーバーのスループットは、このパラメータをオフにすることができたとき。
5、オープンかつ効率的な伝送モード
http {
include mime.types;
default_type application/octet-stream;
……
sendfile on;
tcp_nopush on;
……
}
-
mime.typesのインクルード:メディアタイプを、現在のファイル内の命令を含むだけで、別のコンテンツファイルが含まれています。
-
default_type application / octet-streamと:デフォルトのメディアタイプは十分です。
-
sendfileの上:上への一般的なアプリケーションのための関数呼び出しsendfileの出力ファイルかどうかを開き、効率的なファイル転送モード、nginxのsendfileの命令が指定する、ディスクIOヘビーデューティアプリケーションをダウンロードするために使用されるアプリケーションは、オフに設定することができ、ディスクのバランスをとることがあればネットワークI / O速度を処理し、システムの負荷を軽減。注:画像が正しく、このオフに入れて表示されていない場合。
-
上TCP_NOPUSH:sendfileのは、ネットワークを詰まらアクティブネットワークセグメントの数を減少させる防ぐために、オープンモードで有効でなければならない(応答ヘッダとボディ開始の一部ではなく、一つの伝送ずつで送信されます。)
6、接続時間
主な目的は、サーバリソース、CPU、メモリを保護することで、接続も確立されているため、リソースを消費する必要があり、接続の数を制御します。
keepalive_timeout 60;
tcp_nodelay on;
client_header_buffer_size 4k;
open_file_cache max=102400 inactive=20s;
open_file_cache_valid 30s;
open_file_cache_min_uses 1;
client_header_timeout 15;
client_body_timeout 15;
reset_timedout_connection on;
send_timeout 15;
server_tokens off;
client_max_body_size 10m;
-
keepalived_timeout:この時間をかけて、サーバーがリンクを切断し、クライアント接続セッションのタイムアウトを維持。
- TCP_NODELAY:また、ネットワークの輻輳を防ぐが、keepalivedのパラメータでのみ有効を負担します。
-
4K client_header_buffer_size:頭のクライアント要求バッファのサイズを、これはあなたのページングシステムのサイズに応じて設定することができ、リクエストヘッダのサイズはこれ以上1Kよりも一般的ではありませんが、ページングシステムはので、ここでは、一連のタブを1Kよりも一般的に大きいを持っているので、サイズ。PAGESIZEが作ったgetconfページサイズを注文することができます。
-
= 102400非アクティブ= 20sのopen_file_cache最大:これは、指定されたファイルのキャッシュを開き、最大のバッファの数を指定し、デフォルトで有効にお薦めやファイルの同じ数を開いていない、アクティブでは多くの時間後に削除キャッシュファイルを参照するには、要求されていません。
-
open_file_cache_valid 30代:これは、有効な情報がないかどうかを確認するどのくらいのキャッシュを指します。
-
open_file_cache_min_uses 1:使用最小この数を超えた場合、ファイルは、時間非アクティブの中で使用されていない場合、非アクティブ時間がopen_file_cache命令パラメータファイル数、ファイルディスクリプタは、キャッシュ、上記の例ではそれを開いてきました彼らは削除されます。
-
client_header_timeout:タイムアウト要求ヘッダーを設定します。我々はまた、より多くのこの時間より任意のデータを送信しない場合は、nginxのリターンがエラータイムアウトを要求し、この設定いくつかの低を置くことができます。
-
client_body_timeout要求タイムアウト設定本体。我々はまた、より多くのこの時間よりもエラー上記と同じで、任意のデータを送信しませんでした、この設定いくつかの低を置くことができます。
-
reset_timeout_connection:TELL nginxのは、接続クライアントが応答しない閉じました。これは、クライアントによって占有されていたメモリ領域を解放します。
-
send_timeout:クライアントの応答タイムアウト時間、タイムアウト時間は、2つのイベント間の時間に制限されており、この時間を超過した場合、クライアントはあらゆる活動、nginxのは、密接な関係を持っていません。
- server_tokens:nginxのは、より速く実行することはありませんが、それは間違ったページnginxのバージョン番号にオフにすることができ、これはセキュリティのために良いです。
- client_max_body_size:アップロードファイルのサイズ制限を。
7、FastCGIのチューン
fastcgi_connect_timeout 600;
fastcgi_send_timeout 600;
fastcgi_read_timeout 600;
fastcgi_buffer_size 64k;
fastcgi_buffers 4 64k;
fastcgi_busy_buffers_size 128k;
fastcgi_temp_file_write_size 128k;
fastcgi_temp_path/usr/local/nginx1.10/nginx_tmp;
fastcgi_intercept_errors on;
fastcgi_cache_path/usr/local/nginx1.10/fastcgi_cache levels=1:2 keys_zone=cache_fastcgi:128minactive=1d max_size=10g;
-
fastcgi_connect_timeout 600:指定されたタイムアウトが後端のFastCGIに接続されています。
-
fastcgi_send_timeout 600:送信へのFastCGIタイムアウト要求。
-
600 fastcgi_read_timeout:FastCGIのタイムアウトが応答を受信するように指定。
-
fastcgi_buffer_size 64K:最初の部分の特定は、デフォルトのバッファの応答FastCGIの多くの必要なバッファサイズをお読みください。ブロックサイズごとfastcgi_buffers命令は、この値は小さくてもよいです。
-
fastcgi_buffers 4 64K:PHPのスクリプトが生成されている場合、ページサイズが256キロバイトよりも大きい場合、バッファは、4つの64キロバイトのキャッシュに割り当てられます、256キロバイト、どのくらい、どのくらいのローカルバッファが要求へのFastCGI応答をバッファリングするために使用されるページ・サイズを指定しますデータをより高速なディスクよりもメモリの速度を処理するので、その後、一部はfastcgi_temp_path指定されたパスに256キロバイトのキャッシュよりも大きくなりますが、これは良いの方法ではありません。スクリプトのほとんどが256キロバイト生成されるサイトは、あなたが「4 64K」などで、「8 32K」にこの値を設定することができた場合は通常、この値は、生産現場のPHPスクリプトのページサイズ、ページサイズの中間値でなければなりません。
-
fastcgi_busy_buffers_size 128K:提案は二回fastcgi_buffers忙しい時バッファに設定します。
-
fastcgi_temp_file_write_size 128K:データブロックを書き込むとき、負荷502BadGatewayは時間を設定する場合fastcgi_temp_pathデフォルト値は、値の二倍fastcgi_buffersでどのくらいに報告することができます。
-
fastcgi_temp_path:一時キャッシュディレクトリ。
-
上fastcgi_intercept_errors:このコマンドを指定するかどうか転送し、クライアントへの4XX 5xxのエラーメッセージ、またはnginxのerror_page処理エラーの使用を許可します。注:静的ファイルは、404ページを返しますが存在しませんが、PHPのページが空白のページを返します!
-
fastcgi_cache_path /usr/local/nginx1.10/fastcgi_cachelevels=1:2 keys_zone = cache_fastcgi:128minactive = 1Dのmax_size = 10グラム:fastcgi_cacheキャッシュディレクトリ、あなたがそのような1として、ディレクトリ階層を設定することができます:2は、16の* 256のサブディレクトリを生成します、cache_fastcgiはこれですキャッシュは、キャッシュデータが有効期限内でアクセスされていない場合は、アクティブでは、デフォルトの有効期限を示してどのくらいのメモリ(例えば人気のあるコンテンツnginxのは、直接アクセスを高速化メモリを配置)である名前のバッファ空間が、削除されます、とまで表現しMAX_SIZEどのくらいのハードディスクの空き容量。
-
fastcgi_cache cache_fastcgi:#は、FastCGIのキャッシュを表しオンにし、名前を付けます。オープン便利バッファは、CPUの負荷を軽減することができ、および502がリリースエラーを防止します。バッファ名cache_fastcgiはproxy_cache_path命令のために作成します。
-
fastcgi_cache_valid 200 302 1H:応答時間コードキャッシュ、実施例200および302の値を指定するために使用#1時間の応答バッファを表し、連動fastcgi_cacheに使用されます。
-
301 1D fastcgi_cache_valid:301応答キャッシュの日。
-
他の回答キャッシュ1分:任意の1メートルをfastcgi_cache_valid。
-
fastcgi_cache_min_uses 1:この命令は、同じ回数によってURLリクエストを設定するために使用されるがキャッシュされます。
-
fastcgi_cache_key HTTP:// $ $ REQUEST_URIホスト:このコマンドは、nginxの一般ホスト(ドメイン名)$キーに応じて記憶されているproxy_cache_key MD5ハッシュ値にまとめ、Webキャッシュキー値を設定するために使用される$ REQUEST_URI(ルート要求)変数。 。
- fastcgi_pass:指定のFastCGIサーバのリスニングポートとアドレス、または他のマシンが存在することができます。
要約:
nginxのキャッシュ機能:proxy_cache / fastcgi_cache
-
Proxy_cacheの役割は、それが静的および動的含めて何でも、することができ、キャッシュバックエンドサーバのコンテンツにあります。
-
Fastcgi_cacheの役割は、多くの場合、キャッシュのFastCGI生成されたコンテンツにあるPHPによって生成された動的なコンテンツです。
-
proxy_cache nginxのキャッシュ後端との通信の数、送信時刻とブロードバンドの節約の後端を減少させます。
- fastcgi_cacheキャッシュはnginxのPHPとの通信の数を減らすだけでなく、圧力、PHPとデータベース(MySQLの)減らします。
8、GZIPチューン
gzip圧縮を使用して、それが私たちの帯域幅と高速転送速度まで、より良い経験を救うかもしれないが、これが優先されるので、また、私たちのためにコスト削減します。
nginxの圧縮はapacheのmod_deflateをを使用して、あなたはngx_http_gzip_moduleモジュールに必要な有効になっています。
テキスト、JS、HTML、CSS、画像、ビデオ、フラッシュか何かが圧縮されていませんが、また、我々はgzipの機能を使用することをノートはCPUを消費する必要がある。一般的に、我々はコンテンツを圧縮する必要があります!
gzip on;
gzip_min_length 2k;
gzip_buffers 4 32k;
gzip_http_version 1.1;
gzip_comp_level 6;
gzip_typestext/plain text/css text/javascriptapplication/json application/javascript application/x-javascriptapplication/xml;
gzip_vary on;
gzip_proxied any;
gzip on; #开启压缩功能
-
gzip_min_length 1K:、、ヘッダから取られたページ数は、Content-Lengthヘッダバイト、デフォルト値は0で圧縮されているどのページに関係なく圧縮されたページのバイトの最小許容数を設定可能小型1Kの場合、1Kよりも大きくなるように設定することを推奨しますより多くの圧力が大きくなります。
-
gzip_buffers 4 32K:圧縮バッファサイズ、圧縮の結果として4つのユニット32Kメモリバッファストリームのアプリケーションで表される、デフォルト結果GZIP圧縮を格納するために元のデータメモリと同じサイズを適用することです。
-
gzip_http_version 1.1:圧縮バージョン、HTTPプロトコルのバージョンを識別するために設定され、デフォルトでは現在、ほとんどのブラウザはすでに、GZIP圧縮解除をサポートしてデフォルトを使用し、1.1です。
-
gzip_comp_level 6:GZIP圧縮比を指定するための圧縮比、最大伝送速度よりも速い最速の処理速度、圧縮9、最小圧縮比が、プロセスが遅く、消費比較的CPUリソース。
-
gzip_typesテキスト/ cssのテキスト/ XMLアプリケーション/ javascriptの:圧縮の種類を指定するために使用される、 'text / htmlの' タイプは、常に圧縮されます。デフォルト値:gzip_typesテキスト/ HTML(既定ないのJS / CSSファイル圧縮)
-
圧縮タイプは、MIMEタイプは、圧縮にマッチします。
-
ワイルドカードは、/ *テキストことができません。
-
text / htmlのデフォルトすでに(指定されたか否か)圧縮。
- どの種類の圧縮設定のテキストファイルのconf / mime.typesのを参照することができます。
-
- 上gzip_vary:GZIP圧縮データとnginxの経由などのSquidのキャッシュとしてページを、圧縮された後varyheaderサポート、変更オプションは、フロントエンドのキャッシュサーバのキャッシュを可能にします。
9、キャッシュのチューニングを満了します
主に、特に、画像、CSS、JSおよび他の要素にあまり使用を機会を変更する場合のキャッシュ、画像は、帯域幅を占有し、我々はブラウザのローカルキャッシュ365D、CSS、JSで画像を設定することができ、HTMLが10をキャッシュすることができます一日に、ユーザは最初に遅い少しをロードするために開いていること、第二、それは非常に高速です!キャッシング、我々はキャッシュアウトのランクを拡大する必要性を必要とする、サーバフィールド内部にキャッシュ設定を有効期限。
location ~* \.(ico|jpe?g|gif|png|bmp|swf|flv)$ {
expires 30d;
#log_not_found off;
access_log off;
}
location ~* \.(js|css)$ {
expires 7d;
log_not_found off;
access_log off;
}
注:オフlog_not_found; error_logに記録に誤りがない場合。はいデフォルト。
要約:
機能的な利点を期限切れ:
-
帯域幅を購入するサイト、およびコスト削減を減らすことができます有効期限が切れます。
-
ユーザアクセスの経験を向上させながら、
- サービスへの圧力を軽減し、コスト削減、サーバ、Webサービスの非常に重要な機能です。
機能の短所を期限切れ:
- ページをキャッシュしたり、データを更新し、ユーザーは古いコンテンツを参照してくださいますが、ユーザーエクスペリエンスに影響を与える可能性があります。
例えば最初のキャッシュより短い時間、::ソリューション一日が、完全ではない、一日よりも大きいの更新頻度がない限り、名前を変更したキャッシュへの第二の目的。
サイトでは、キャッシュされたコンテンツであることを望んでいません。
-
ウェブサイトのトラフィック統計ツール。
- 頻繁に更新されたファイル(Googleのロゴ)。
10、抗ホットリンク
あなたのリソースやネットワークトラフィックを消費し、あなたのWebサイトの参照、写真、リンク、から直接防ぎ他の人が、私たちはいくつかのソリューションを作りました:
-
ウォーターマーク、あなたの帯域幅をブランディング、サーバーに十分な。
-
ファイアウォール、直接制御は、あなたがIPソースを知っているものとします。
- 次のセキュリティチェーン戦略は、直接エラー404を与えることです。
location ~*^.+\.(jpg|gif|png|swf|flv|wma|wmv|asf|mp3|mmf|zip|rar)$ {
valid_referers noneblocked www.benet.com benet.com;
if($invalid_referer) {
#return 302 http://www.benet.com/img/nolink.jpg;
return 404;
break;
}
access_log off;
}
パラメータは次の形式を有効にします:
- なし:意味は、(例えばブラウザで直接オープンA画像として、直接アクセス空表される)Refererヘッダが存在しません。
- ブロックされた:「リファラー:XXXXXXX」などのファイアウォールRefererヘッダに従ってカモフラージュ手段、。
- SERVER_NAMES:1つ以上のサーバーのリストは、バージョン0.5.33は、後に名にワイルドカード「*」を使用することができます。
11、カーネルパラメータの最適化
-
fs.file-MAX 999999 =:ハンドルの最大数を同時に開くことができるプロセスのパラメータ(例えばワーカープロセスとして)、このパラメータは、同時接続の最大数直線、実際の状況に応じて構成されることを制限します。
-
net.ipv4.tcp_max_tw_buckets = 6000:複数この数よりも、TIME_WAITソケットはすぐにクリアされ、警告メッセージを出力する場合、このパラメータは、TIME_WAITのソケットの最大数を可能にするためにオペレーティングシステムを示しています。18万過剰TIME_WAITソケットにこのパラメータのデフォルトは、Webサーバーが遅くなります。注:アクティブな接続を閉じ、サーバーが接続TIME_WAIT状態を生成し、
-
net.ipv4.ip_local_port_range = 1024 65000:システムは、ポートの範囲を開くことができます。
-
net.ipv4.tcp_tw_recycle = 1:TIMEWAIT急速な回復を有効にします。
-
net.ipv4.tcp_tw_reuse = 1:オープン再利用。TIME-WAITソケットは、新しいTCP接続のために再使用が可能。サーバは常にTIME-WAIT状態の多数に接続されるので、サーバーのための理にかなっています。
-
net.ipv4.tcp_keepalive_time = 30:キープアライブが有効になっている場合、このパラメータが示す、キープアライブメッセージのTCPの送信周波数。デフォルトでは、いくつかの小さなセットならば、あなたはすぐに無効な接続をクリーンアップすることができ、2時間です。
-
net.ipv4.tcp_syncookies = 1:オープンSYNクッキーは、SYNキューのオーバーフローが発生した場合、に対処するためのクッキーを有効にします。
-
net.core.somaxconn = 40960:デフォルトの機能でWebアプリケーションのバックログは、私たちはカーネルパラメータを聞くなります。
-
net.core.somaxconn:128に限定されるものではnginxのデフォルトはNGX_LISTEN_BACKLOG 511に定義され、この値を調整する必要があります。注:スリーウェイハンドシェイクが成功したとき、TCP接続の場合は、サーバーとクライアントのニーズは3ウェイハンドシェイクを経由してネットワーク接続を確立するために、我々は、確立され、その後、あなたがこのリンク上のデータの転送を開始することができますLISTENからの移行へのポートのステータスを確認することができます。各状態のポートモニタがキューリスナー独自のキューの長さは、関連するポートSOMAXCONNプログラム()関数などのパラメータをリスンし、使用している(リッスン)聞いています。SOMAXCONNはグローバルパラメータである各ポート監視システムキューの最大長を定義する、デフォルト値は正規高負荷環境新しいWebサービス接続を処理するために、128で、128の既定値は小さすぎます。この値は1024以上に増加し、ほとんどの環境に推奨されます。大は、サービスのDoSの拒否を防ぐためのキューも役立つだろう***聞きます。
-
net.core.netdev_max_backlog = 262144:これらのパッケージのコア処理より受信したパケットレートインターフェースは、キューの最大数は、データパケットを許可するネットワークごとに速い速度。
-
net.ipv4.tcp_max_syn_backlog = 262144:このパラメータはSYN要求キューを受け入れるために、ステージの最大長を確立するために、TCP 3ウェイハンドシェイクをラベル、デフォルトは1024ですが、それが大きすぎるAの数がイベントで新しい接続を受け入れるようにnginxの忙しい時間を作ることができます設定されている、Linuxはしませんクライアントによって開始された接続要求の損失。
-
net.ipv4.tcp_rmem = 87380 12582912 10240:このパラメータは、デフォルト値、最大値(TCPスライディングウィンドウを受信するための)最小のTCP受信バッファを定義します。
-
net.ipv4.tcp_wmem = 87380 12582912 10240:このパラメータは、TCP送信バッファを定義(TCP送信スライディングウィンドウの)最小値、デフォルト値、最大値。
-
net.core.rmem_default = 6291456:このパラメータは、カーネルのソケットバッファのデフォルトサイズの受け入れを示しています。
-
net.core.wmem_default = 6291456:このパラメータは、カーネルソケット送信バッファのデフォルトサイズを示します。
-
net.core.rmem_max = 12582912:このパラメータは、カーネルソケットバッファの最大サイズを受け付ける示します。
-
net.core.wmem_max = 12582912:このパラメータは、カーネルソケットバッファの最大サイズが送信されていることを示します。
-
net.ipv4.tcp_syncookies = 1:TCP SYN ***を解決するため、性能パラメータの関係なく。
以下は、完全なカーネルの最適化設定を投稿:
fs.file-max = 999999 net.ipv4.ip_forward = 0 net.ipv4.conf.default.rp_filter = 1 net.ipv4.conf.default.accept_source_route = 0 kernel.sysrq = 0 kernel.core_uses_pid = 1 net.ipv4.tcp_syncookies = 1 kernel.msgmnb = 65536 kernel.msgmax = 65536 kernel.shmmax = 68719476736 kernel.shmall = 4294967296 net.ipv4.tcp_max_tw_buckets = 6000 net.ipv4.tcp_sack = 1 net.ipv4.tcp_window_scaling = 1 net.ipv4.tcp_rmem = 10240 87380 12582912 net.ipv4.tcp_wmem = 10240 87380 12582912 net.core.wmem_default = 8388608 net.core.rmem_default = 8388608 net.core.rmem_max = 16777216 net.core.wmem_max = 16777216 net.core.netdev_max_backlog = 262144 net.core.somaxconn = 40960 net.ipv4.tcp_max_orphans = 3276800 net.ipv4.tcp_max_syn_backlog = 262144 net.ipv4.tcp_timestamps = 0 net.ipv4.tcp_synack_retries = 1 net.ipv4.tcp_syn_retries = 1 net.ipv4.tcp_tw_recycle = 1 net.ipv4.tcp_tw_reuse = 1 net.ipv4.tcp_mem = 94500000 915000000 927000000 net.ipv4.tcp_fin_timeout = 1 net.ipv4.tcp_keepalive_time = 30 net.ipv4.ip_local_port_range = 1024 65000
カーネルのsysctlを-p実装は、変更を有効にします。
図12は、システム上の接続の数を最適化します
開いているファイルのLinuxのデフォルト値は1024です。現在のシステムの値を表示します。
# ulimit -n
1024
説明サーバーは、1024ファイルでのみオープンできます。
開いているファイルの現在の最大数を表示することができ-nのulimitを使用して、ulimitのは、システムの現在の制限のすべてを表示することができ-aを使用します。
新しくインストールされたLinuxのデフォルトの大型サーバなどの負荷が、それは出会いエラーに簡単であるのみ1024:あまりにも多くの開いているファイル。したがって、我々は最後の/etc/security/limits.confをの大幅な増加を変更する必要があります。
* soft nofile 65535
* hard nofile 65535
* soft noproc 65535
* hard noproc 65535