[Java] HikariCP Connection Pool

Java/Java 2014. 10. 12. 00:46

링크: https://github.com/brettwooldridge/HikariCP

링크: https://github.com/brettwooldridge/HikariCP/wiki/Hibernate4

링크: https://github.com/brettwooldridge/HikariCP/wiki/MySQL-Configuration

링크: https://github.com/brettwooldridge/HikariCP/wiki/Spring-Hibernate


국내 링크: http://netframework.tistory.com/431


성능이 좋다는 말이 있다. 우선 테스트로 사용해 보고 판단하자.


Springframework datasource (context-datasource.xml)

<!-- HikariCP configuration -->

<bean id="dataSource" class="com.zaxxer.hikari.HikariDataSource" destroy-method="shutdown">

    <constructor-arg>

        <bean class="com.zaxxer.hikari.HikariConfig">

            <constructor-arg>

                <props>

                    <prop key="dataSource.url">jdbc:mysql://localhost/database</prop>

                    <prop key="dataSource.user">username</prop>

                    <prop key="dataSource.password">password</prop>

                    <prop key="dataSource.cachePrepStmts">true</prop>

                    <prop key="dataSource.prepStmtCacheSize">250</prop>

                    <prop key="dataSource.prepStmtCacheSqlLimit">2048</prop>

                    <prop key="dataSource.useServerPrepStmts">true</prop>

                </props>

            </constructor-arg>

            <property name="dataSourceClassName" value="com.mysql.jdbc.jdbc2.optional.MysqlDataSource" />

            <property name="minimumIdle" value="5" />

            <property name="maximumPoolSize" value="10" />

            <property name="connectionTestQuery" value="SELECT 1" />

            <property name="connectionTimeout"  value="300000" />

        </bean>

    </constructor-arg>

</bean>



Tomcat + Jndi (context.xml)

<Resource name="jdbc/myJndiName"

          auth="Container"

          factory="com.zaxxer.hikari.HikariJNDIFactory"

          type="javax.sql.DataSource"

          dataSourceClassName="com.mysql.jdbc.jdbc2.optional.MysqlDataSource"

          minimumIdle="5"

          maximumPoolSize="10"

          connectionTimeout="300000"

          connectionTestQuery="SELECT 1"


          dataSource.url="jdbc:mysql://localhost/database"

          dataSource.user="username"

          dataSource.password="password"

          dataSource.cachePrepStmts="true"

          dataSource.prepStmtCacheSize="250"

          dataSource.prepStmtCacheSqlLimit="2048"

          dataSource.useServerPrepStmts="true"

          />


'Java > Java' 카테고리의 다른 글

[Java] tattletale (프로젝트 구성을 볼수 있음)  (0) 2015.03.08
[Java] 자바 매크로  (0) 2015.01.20
[Java] Java Installer IzPack  (0) 2014.06.24
[Java] Current Project classpath  (0) 2014.05.31
[Java] Cron 문법  (0) 2014.03.31
posted by 뚱2