Что такое хороший инструмент для расследования использования Соединения с базой данных в Java?

Что такое хороший инструмент для расследования использования Соединения с базой данных в Java?

Разработчик поддерживает сложную программу Java, которая ocassionally исчерпывает количество доступных Соединений с базой данных. Так как проблема является спорадической, было бы полезно знать, какой поток открыл многочисленные связи для базы данных, чтобы сфокусировать усилие в этой области.

В конце корректная фиксация, кажется, для перезаписи программы, чтобы снова использовать соединения и не открыть многочисленные связи на поток.

Я спрашиваю, что инструменты должны разработчик иметь на его панели инструментов, чтобы быть в состоянии исследовать ресурсы т.е. Соединения с базой данных, которые были выделены потоком.

12
задан Stuart Woodward 21 January 2010 в 07:42
поделиться

4 ответа

Посмотрите log4jdbc. Он позволяет вам просмотреть все, что происходит в jdbc, включая открытие/закрытие соединений, а также информацию о номере соединения.

7
ответ дан 2 December 2019 в 20:40
поделиться

Кто-то показал мне ConconLeakfinder недавно, «простой инструмент для утечек подключения JDBC в коде Java». Я сам не проверил это, но это должно позволить вам , чтобы увидеть, кто не закрыл соединение после использования . См. Соединение + утечка + как + к + find.htm .

Но Действительно, вам следует конкончаться с использованием соединительного бассейна (например C3P0 ).

4
ответ дан 2 December 2019 в 20:40
поделиться

Бассейны соединения могут дать вам некоторую диагностику. Например, проверьте свойство DEBUGUNRETURNEDCONSNUCTICTACTTRACES для бассейна соединения C3P0:

http://www.mchange.com/projects/c3p0/index.html#debugunreturnuedConnectionStacktraces

1
ответ дан 2 December 2019 в 20:40
поделиться

P6SPY - это каркас с открытым исходным кодом для поддержки приложений, которые перехватывают и необязательно модифицируют операторы базы данных.

из http://www.p6spy.com/about.html
Распределение P6SPY включает в себя следующие модули:

  • P6LOG. P6Log перехватывает и регистрирует операторы базы данных любого приложения, использующего JDBC. Это приложение особенно полезно для разработчиков для мониторинга операторов SQL, создаваемой серверами EJB, что позволяет разработчику записывать код, который достигает максимальной эффективности на сервере. P6SPY предназначен для установки за считанные минуты и не требует изменений кода.
  • p6outage. P6OUTAGE обнаруживает длительные операторы, которые могут быть указывающими на проводку базы данных, и будет регистрировать любое утверждение, которое превосходит настраиваемую границу времени во время его выполнения. P6OUTAGE был разработан, чтобы минимизировать любую пенальти для выполнения производительности, путем регистрации только в длительных операторах.
0
ответ дан 2 December 2019 в 20:40
поделиться
Другие вопросы по тегам:

Похожие вопросы: