2016-01-25 7 views
3

Я прочитал из документации DBCP2, что эта новая версия поддерживает мониторинг JMX для пула соединений, но я не смог найти какой-либо пример, который показывает фактическое использование.Мониторинг пула соединений DBCP2 с JMX

У меня есть простое java-приложение на основе JDBC, которое использует dbcp2 для создания пула соединений, который используется простой службой запросов, и я хочу отслеживать это соединение с помощью другого инструмента, такого как VisualVM, с помощью JMX. DBCP2's BasicDataSource имеет методы, подобные setJmxName() , которые я не вижу для этого использования, и не знаю, как его использовать.

Если кто-то не знаком с JDBC, вы можете прочитать об этом here.

Любая помощь по этому вопросу будет оценена по достоинству. Спасибо!

+0

Улучшен формат вопроса, чтобы сделать его немного понятным. Добавлены некоторые ресурсы, указывающие на документацию JDBC для других, чтобы легче следить за тем, на что фокусируется тема. – Mike

+0

У меня было много проблем с DBCP2 в Production с большим количеством потоков, я решил использовать C3P0, который отлично работает, плюс у него была очень хорошая реализация JMX. –

ответ

4

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

Вам просто нужно создать объект BasicDataSource или BasicManagedDataSource, как обычно, и затем вызвать метод setJmxName(). Затем DataSource зарегистрируется на сервере MBean платформы, когда вы вызываете метод getConnection() и отмените регистрацию, когда вы вызываете метод close().


Установка имени JMX из "org.apache.dbcp:DataSource=mydbname" работ, пример Apache использует для модульных тестов может быть found here.

+1

Синтаксис имени объекта описан здесь: http://www.oracle.com/us/technologies/java/best-practices-jsp-136021.html. –

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

  • Нет связанных вопросов^_^