「あまりにも多くのオープン」のエラーと解決策

まず、問題の現象

java.io.IOException:開いているファイルが多すぎます

ヒントを参照して、適切なログ・プロセスを入力します。

第二に、ソリューション

考える:この場合は、Linuxのulimitコマンドの下で使用することを含む、ulimitのは、主に制約の様々なタイプをサポートし、プロセスのリソースの使用を制限するために使用されます。

-a

現在のシステムリソース制限に関するすべての情報を表示します。

-H

セットが増加することができないと、ハードリソース制限を設定します。

-S

増加させることができるが、ハードリソース設定を超えることはできませんを設定した後、リソース制限を設定します。

-c

単位としてのブロックにコアファイルの最大サイズ。

-f

プロセスは、単位としてブロックと最大ファイルを作成することができます。

-d

バイト単位にプロセスデータセグメントの最大サイズ。

-m

Kバイト単位での最大メモリサイズ。

-n

開くことのできるファイル記述子の最大数。

-s

Kバイト単位でのスレッドのスタックサイズ。

-p

キロバイトの単位でパイプのバッファサイズ、。

-u

ユーザに利用可能なプロセスの最大数。

-v

Kバイト単位の仮想メモリー使用可能なプロセスの最大数。

-t

最大CPU使用時間(秒)。

-l

最大メモリサイズはバイト単位にロックすることができます。

/etc/security/ulimit.confでulimitコマンドをプロフィール。

ユーザーファイルulimitコマンドを変更することが可能なプロセスの最大数:/etc/security/ulimit.d/20-nproc.conf

2つのファイルが変更するために利用されると、ユーザー・プロセスの最大数は/etc/security/ulimit.d/20-nproc.conf勝ちます。

第三に、問題の原因

ulimitの時間制限を加えるので、後に最後の開始Tomcatの時間よりも、そしてその間に、Tomcatサービスが再起動されていない、オペレーティングシステムが再起動されていない場合、Tomcatのulimitのリソース制限は、それが有効で、常にではありません。

解決プロセス:

[ルート@のtomcatserver〜]#件のpgrep-FのTomcat

12031

[ルート@のtomcatserver〜]#psの-eopid、LSTART、ETIME | grep12031

12031火4月17日午前14時25分48秒2018 47:03

[ルート@のtomcatserver〜]#スタット/etc/security/limits.confを

私たちは、プロセスを再起動することができます

おすすめ

転載: www.cnblogs.com/yxf-/p/11442834.html