Tomcat 7 での JDBC データソースのメモリ リーク
JDBC データソースを使用して Tomcat 7 をシャットダウンすると、次のような警告メッセージが表示される場合があります。以下:
SEVERE: The web application [/my_webapp] appears to have started a thread named [MySQL Statement Cancellation Timer] but has failed to stop it. This is very likely to create a memory leak.
JDBC ドライバーの登録問題への対処
JDBC ドライバーの登録解除に関連する問題を解決するには、destroy-method が適切に構成されていることを確認してください。 context.xml の要素。正しい構成は次のとおりです。
<bean>
MySQL ステートメント キャンセル タイマー エラーの解決
MySQL ステートメント キャンセル タイマー スレッドに関連するエラーに対処するには、次の手順に従います。 :
<context-param> <param-name>shutdownHook</param-name> <param-value>com.example.MyShutdownHook</param-value> </context-param>
Tomcat のシャットダウン時に実行する MyShutdownHook クラスを作成します:
public class MyShutdownHook implements Shutdownable { @Override public void shutdown() { // Logic to properly close the MySQL Statement Cancellation Timer thread } }
上記のソリューションを実装すると、 JDBC データソースの使用に関連するメモリ リークと MySQL ステートメント キャンセル タイマーの問題は、Tomcat 7 で効果的に軽減できます。
以上がTomcat 7 で JDBC データソースのメモリ リークを防ぐ方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。