質問: ### 前提・実現したいこと Windows Server2016にJava10.0.2、Tomcat9.0.13、Oracle12cR2でWebアプリを2つ(アプリA、アプリB)動かしています。 アプリA・・・メインアプリ アプリB・・・Tomcat上にアプリBを置き、そのtomcatが正しく動いているか、DBから期待する値を取ってきて期待する値がとれていれば正常稼働している、と判断するためだけのアプリ。 どのタイミングで問題が発生するか不定期なのですが、アプリAが応答なしになるときがあり、その時はTomcat毎サービスを再起動することで復旧させているのですが、原因がわかりません。 アプリAはTomcat5からTomcat7まで動かしている実績があり、Tomcat5,7でその現象が発生したことはありません。 何か調べるポイントや、原因がわかる、などありましたらご教授いただければ幸いです。 ### 発生している問題・エラーメッセージ ``` エラーメッセージ ``` ### 該当のソースコード ``` ソースコード ``` ### 試したこと アプリAが応答なしになった際に、アプリBは正しく動作しているため、Tomcat自体が死んでいるとは思えず、アプリAに関してだけが応答なし状態です。 tomcatが標準出力するログには何も出ておらず、正直行き詰っております。 DBへのコネクションクローズについては、プログラム側でクローズ漏れはなく、 コンテキストにも以下の設定を入れているためクローズ漏れがあったとしても 自動クローズしているものと認識しています。 removeAbandoned="true" removeAbandonedTimeout="300" logAbandoned="true" ### 補足情報(FW/ツールのバージョンなど) ここにより詳細な情報を記載してください。
回答: たぶん解決してるかと思いましたので、アップします。 tomcatに割り当てたメモリが少なすぎたためだったのかも知れません。 当初、練習環境ということで少なめに512mbだけ割り当てていました。 それを1024mbに上げても固まる現象は2回ほどあったため、2048mbまで上げたところ、今のところ再現しなくなっています。 ただ、out of memory がログ上出ているわけでもなく、確証があるわけではないですが... 追加でgcログ出すようにしたので、これで様子見ることにすます。