私は最近Tomcatサーバーでエラーが発生しました。「開いているファイルが多すぎます」というエラーが発生し、サーバーのSSLコネクタに使用されているキーストアファイルを参照しています。誰がこれがどこから来ているのか分かりませんか?私たちのサーバーはかなりの数の接続を受け取りますが、最大許容接続数が150を超えた場合、サーバーは(何らかの理由で)起動しなくなります。 Tomcatにメモリ内のキーストアをキャッシュさせて、接続がファイルから繰り返し読み込む必要がないようにする方法はありますか?"Too many open files"がTomcatキーストアにあります
1
A
答えて
1
私はあなたがLinux上で動作していると仮定します。なぜなら、それが答えを得ているからです。
ulimit -n
これはおそらく、Linux用の「通常」のユーザの制限である1024年を印刷します:
最初のステップは、開いているファイルのためのulimitをチェックし、シェル内のそれ高く設定しようとすることです。高い数字を設定してみてください:
ulimit -n 2048
これが成功した場合は、素晴らしいです。あなたのログインスクリプトにそのコマンドを入れて、あなたは行かなくてはなりません。そうでない場合は、ユーザーごとの制限を増やす必要があります。 this documentによれば、編集したいファイルは/etc/security/limits.conf
です。ちなみに、Tomcatは同じファイルを読み続けるので、おそらくこれは表示されません。 JVMは通常、アプリケーションで使用されるすべてのJARファイルをオープン(およびメモリマップ)し、設定ファイルのオープンファイルハンドルも保持します。キーストアファイルを開くときに限界に達するだけです。
関連する問題
- 1. C# 'parsing ")" - Too Many)の問題
- 2. bash - if文 - [:too many arguments]
- 3. Django Many To Manyプライマリキーに不満があります
- 4. Tomcat SSLとキーストア
- 5. Tomcatのキーストア環境パス
- 6. RunWorkerCompleted too too firing too
- 7. Bouncy Castleキーストア(BKS):java.io.IOException:キーストアのバージョンが正しくありません
- 8. 複数の証明書が単一のキーストアと1つのTomcatインスタンスにある
- 9. JMenuItem ImageIcon too too
- 10. Tomcat 6でSSLを使用したキーストア形式が正しくありません
- 11. django admin list_filter too too
- 12. Android:Shake Detector too too Sens
- 13. Android:java.io.IOException:キーストアのバージョンが正しくありません
- 14. Javaの「Windows-MY」に似たUNIXキーストアはありますか?
- 15. eclipse + tomcatデプロイ:ディレクトリがありません
- 16. 再帰ルーチンの "stack level too deep"エラーの回避策がありますか?
- 17. img = Image.open(fp)AttributeError:class Imageに 'open'属性がありません
- 18. many-to-many:もう1つの '子'があるときに 'parent'が削除されます
- 19. Rails Many Many Search
- 20. Tomcatセッションにログインする必要がありますか?
- 21. 私のサーバーでtomcat 8に問題があります
- 22. Windows上でTomcatコンソール出力がどこにありますか
- 23. JSPとTomcatのWebページに問題があります
- 24. tomcat 6設定に問題がありますか?
- 25. Hirb - irbrc(コンソールに直接はない)からロードする場合のみ "Too many fields .."
- 26. Laravel Many To Many Save
- 27. Visual Studio 2010 "Open With ..."がありませんか?
- 28. にjava.io.IOException:無効なキーストア形式のTomcat 7でSSLモードを有効にするにはTomcatサーバー
- 29. NHibernate many to many backward query
- 30. Apache Tomcat Exception - 開いているファイルが多すぎます
どのOS /プラットフォームですか? –
サーバはUbuntu 9.04 Server上で動作していますが、Tomcat 5.5はJDK 6 Update 5 VM上で動作しています。 –
"lsof -utomcatprocessname"を実行して、tomcatを実行しているプロセスが開いたままになっているすべてのファイルをリストする必要があります。何が開いているのか驚くかもしれません。 – Photodeus