Как я могу использовать FlexyPool с HikariCPFactory?

Я хочу измерить метрики в моем источнике данных, сравнивая HikariCP и C3pO. Я не понимаю, как я могу использовать FlexyPool в своем проекте. У меня есть Tomcat context.xml и HikariCP:

          <Resource name="jdbc/dictionaryDB"
            auth="Container"
            factory="com.zaxxer.hikari.HikariJNDIFactory"
            type="javax.sql.DataSource"
            driverClassName="org.postgresql.Driver"
            jdbcUrl="jdbc:postgresql://localhost:5432/deversdb"
            username="user"
            password="pass"
            maxActive="8"
            maxIdle="4"/>

Пожалуйста, помогите мне, я новичок в теме пула подключений. Что мне нужно делать с этим https://github.com/vladmihalcea/flexy-pool/wiki/HikariCP-Configuration?


person S_T_I_M    schedule 27.07.2016    source источник


Ответы (1)


Поскольку у вас уже есть DataSource, который предоставляется через JNDI, вы можете попробовать использовать Режим установки Java EE.

Для этого вам понадобится flexy-pool.properties файл конфигурации в корневом каталоге пути к классам, который должен содержать следующие свойства:

flexy.pool.data.source.unique.name=some-unique-name
flexy.pool.data.source.jndi.name=jdbc/dictionaryDB
flexy.pool.metrics.reporter.jmx.auto.start=true

В качестве зависимостей вам понадобятся:

<dependency>
    <groupId>com.vladmihalcea.flexy-pool</groupId>
    <artifactId>flexy-java-ee</artifactId>
    <version>${flexy-pool.version}</version>
</dependency>
person Vlad Mihalcea    schedule 27.07.2016
comment
Хорошо, я добавил эти зависимости в мои pom.xml flexy-java-ee и flexy-pool-core и flexy-pool.properties в свой путь к классам и com.vladmihalcea.flexypool.adaptor.FlexyPoolHibernateConnectionProvider в конфигурацию гибернации и запуск моего приложения, но я не вижу никаких mbean с именем, начинающимся с com.vladmihalcea.flexypool в JConsole в процессе tomcat, что я сделал не так? - person S_T_I_M; 29.07.2016
comment
Вам нужно будет отладить _ 1_, чтобы узнать, что происходит. - person Vlad Mihalcea; 29.07.2016
comment
Вызвано: java.lang.IllegalStateException: не удалось загрузить MetricsFactory! Как я могу это решить? - person S_T_I_M; 01.08.2016
comment
У вас есть flexy-java-ee зависимость? Вы также должны увидеть flexy-codahale-metrics и flexy-dropwizard-metrics в пути к классам. - person Vlad Mihalcea; 01.08.2016
comment
Я добавил также metrics-core-3.1.2.jar в путь к классам, и я успешно вижу mbean в jConsole - person S_T_I_M; 01.08.2016
comment
Спасибо за помощь! И последний вопрос: что вы используете для построения метрик? - person S_T_I_M; 01.08.2016
comment
Вы можете использовать все, что поддерживает Codahale / Dropwizard Metrics: Graphana, Graphite. - person Vlad Mihalcea; 01.08.2016
comment
Кстати, не могли бы вы добавить отзыв к FlexyPool? Вы также можете рекламировать свою компанию или свой продукт. Ознакомьтесь с текущими отзывами: github.com/vladmihalcea/flexy-pool#who- использует-flexypool - person Vlad Mihalcea; 08.08.2016