私の開発環境を使用すると「フォーク失敗」が発生する

私の開発環境を使用すると「フォーク失敗」が発生する

私は主にArch LinuxでJavaを使用するソフトウェア開発者です。最近、開発環境やシステム自体でリソースエラーが発生しました。

一般的に使用するすべてのアプリを実行すると、システムは次のエラーが発生し始めます。

zshから:

mlenz@loki ~/[redacted] (git)-[master] % cd ..
VCS_INFO_detect_git:9: fork failed: resource temporarily unavailable

Eclipse(私のIDE)から:

Unhandled event loop exception
unable to create new native thread

Wildfly(現在のプロジェクトで使用されているアプリケーションサーバー)を起動しています。

13:19:54,962 ERROR [org.xnio.listener] (XNIO-1 I/O-2) XNIO001007: A channel event listener threw an exception: java.lang.OutOfMemoryError: unable to create new native thread
at java.lang.Thread.start0(Native Method)
at java.lang.Thread.start(Thread.java:714)
...

制限ulimitに問題があると疑っていましたが、異常に大きな値に設定しましたが、問題は解決されませんでした。nprocnofile

mlenz@loki ~ % ulimit -a               
-t: cpu time (seconds)              unlimited
-f: file size (blocks)              unlimited
-d: data seg size (kbytes)          unlimited
-s: stack size (kbytes)             8192
-c: core file size (blocks)         0
-m: resident set size (kbytes)      unlimited
-u: processes                       256106
-n: file descriptors                65535
-l: locked-in-memory size (kbytes)  1024
-v: address space (kbytes)          unlimited
-x: file locks                      unlimited
-i: pending signals                 63787
-q: bytes in POSIX msg queues       819200
-e: max nice                        0
-r: max rt priority                 0
-N 15:                              unlimited

/proc/sys/fs/file-nrまた、特に明記されていますが、問題がファイルハンドルの数など、システム全体のカーネルリソース制限である可能性があることがわかりました。

mlenz@loki ~ % cat /proc/sys/fs/file-nr 
13312   0   1629104

私たちのシステム管理者はlsof行数が非常に高いようだと確認しましたが、他の同僚のコンピュータも確認しましたが、その人も同様に高い行数を持っていました。

mlenz@loki ~ % lsof | wc -l
228787

私の開発環境は通常、2つのWildflyアプリケーションサーバーを起動するという点で非常に珍しいです(1つは外部システム用の仮想サーバー、もう1つは私たちのアプリケーション用)。問題は、2つのアプリケーションサーバーとコンピュータで使用されている他のいくつかのアプリケーションを起動したときにのみ発生するようです。私のシステムで多くのサービスが実行されているので、システムが到達する制限の一部を増やす必要があるかもしれませんが、どちらが起こるのかわかりません。

私が見逃した可能性があるアイデア、または何が間違っているかを確認するために確認できるものはありますか?

関連情報