UGA Boxxx

つぶやきの延長のつもりで、知ったこと思ったこと書いてます

【Spring Boot】HikariCPとは?

HikariCPというワードを目にしたので調べた

検索したら一番最初にでてきたので参考にした openstandia.jp

HikariCP(ヒカリシーピー)は、高速かつ軽量なJDBCコネクションプールのライブラリです。現時点では、Javaで実装されたコネクションプールのライブラリの中で最も高速という検証結果も出ており、RDBMSアクセス時の性能を要求されるような場合に有効なソリューションとなります。

コネクションプール

WEBサーバがDBサーバに対して作ったコネクションを使いませるようにコネクションをためておくところ

コネクションを作成するのはオーバーヘッドが大きいので、アクセスあるたびに都度コネクションを生成していると遅延が発生してしまったり、DBサーバのポートが枯渇してしまうという問題が発生するので、一度作ったコネクションを使いまわして、オーバーヘッドを減らし、遅延なくアクセスをさばくことができるようにする

Spring Bootでの設定

application.yamlに以下を設定するだけ

spring:
    datasource:
        url: xxxxxxxxxx
        username: xxxxxxxxxxx
        password: xxxxxxxxxxx
        hikari:
          pool-name: ConnectionPool
          leakDetectionThreshold: 5000
          connection-test-query: SELECT 1
          minimum-idle: 5
          maximum-pool-size: 10
          auto-commit: false

プロパティは以下にある

https://github.com/brettwooldridge/HikariCP

他参考

https://tomokazu-kozuma.com/how-to-set-up-a-connection-pool-using-hikaricp-in-spring-boot/