我已经在我们的服务器上配置了ulimit和/ proc / sys / fs / file-max为1000000。 当我发现"太多打开的文件"在server.log中的异常,我用" lsof | wc",然后结果大于1000000,因此它不是配置问题。 " lsof |的结果WC"从300000到1000000.并且" lsof -p {wildfly pid}"是1534年。 如果我使用" lsof"列出所有打开的文件,结果如下:
java 23032 23570 star 803r FIFO 0,8 0t0 159435626 pipe java 23032 23570 star 804r FIFO 0,8 0t0 159427236 pipe java 23032 23570 star 805r FIFO 0,8 0t0 159416919 pipe java 23032 23570 star 806r FIFO 0,8 0t0 159425566 pipe
" 23032"是野生蝇。这个pid有超过200个tid(线程ID),每个tid(线程?)打开1534个文件。有时候,打开的文件总数大于1000000和“打开文件太多”#34;扔了。
任何人都可以帮助解决根本原因以及如何解决问题或为此提供解决方法吗?
非常感谢你的帮助。
答案 0 :(得分:1)
尝试Wildfly 10.1。如果您使用SSL,则可能存在一些可能相关的错误修复。