2015-07-29 2 views
1

Используемая память сервера увеличивается. Я подозреваю, что здесь происходит утечка памяти. И когда я посмотрел на кучу кучи, я вижу слишком много экземпляров «com.mysql.jdbc.JDBC4Connection», загруженных в память. Там, где я использую соединение, я закрываю соединение, результат и подготовленный оператор. Я делаю что-то неправильно ?Слишком много экземпляров «com.mysql.jdbc.JDBC4Connection»

5,576 instances of "com.mysql.jdbc.JDBC4Connection", loaded by "sun.misc.Launcher$AppClassLoader @ 0x68001f718" occupy 165,513,640 (55.60%) bytes. 
Keywords 
com.mysql.jdbc.JDBC4Connection 
sun.misc.Launcher$AppClassLoader @ 0x68001f718 
+0

Вы закрываете все ресурсы в блоке «finally»? Используете ли вы пул соединений? –

+1

Опубликуйте некоторый код того, как вы используете соединение –

+0

@ bobs_007, да, я закрываю все ресурсы в блоке finally. – thomas

ответ

1

Уверен, что вы не закрыли какое-либо соединение. Пожалуйста, внимательно просмотрите свой код. Однако, если вам не удалось решить проблему, попробуйте использовать механизм объединения пулов следующим образом: https://devcenter.heroku.com/articles/database-connection-pooling-with-java

Смежные вопросы