日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

hikaricp mysql_使用 HikariCP 数据源

發(fā)布時間:2024/7/23 数据库 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 hikaricp mysql_使用 HikariCP 数据源 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

概述

HikariCP是Spring Framework 5.0的默認 數據庫連接池,這得益于他的高性能。但是如果配置不當,數據庫連接池也可能因影響到系統(tǒng)性能。

重要參數

maximum-pool-size

minimum-idle

pool-name

auto-commit

idle-timeout

max-lifetime

connection-timeout

初始化過程和連接創(chuàng)建邏輯

當HikariCP初始化時候,會將添加連接到池中,直到達到minimum-idle的數量,此時保持這個狀態(tài)。當有新的連接池請求時,HikariCP會返回一個connection的代理。當connection都處于使用狀態(tài)時,若此時有新的連接池請求,HikariCP就會繼續(xù)新建connection直到達到maximun-pool-size。

maximum-pool-size

池中最大連接數(包括空閑和正在使用的連接)。默認值是10,這個一般預估應用的最大連接數,后期根據監(jiān)測得到一個最大值的一個平均值。要知道,最大連接并不是越多越好,一個connection會占用系統(tǒng)的帶寬和存儲。但是 當連接池沒有空閑連接并且已經到達最大值,新來的連接池請求(HikariPool#getConnection)會被阻塞直到connectionTimeout(毫秒),超時后便拋出SQLException。

minimum-idle

池中最小空閑連接數量。默認值10,小于池中最大連接數,一般根據系統(tǒng)大部分情況下的數據庫連接情況取一個平均值。Hikari會盡可能、盡快地將空閑連接數維持在這個數量上。如果為了獲得最佳性能和對峰值需求的響應能力,我們也不妨讓他和最大連接數保持一致,使得HikariCP成為一個固定大小的數據庫連接池。

pool-name

連接池的名字。一般會出現在日志和JMX控制臺中。默認值:auto-genenrated。建議取一個合適的名字,便于監(jiān)控。

auto-commit

是否自動提交池中返回的連接。默認值為true。一般是有必要自動提交上一個連接中的事物的。如果為false,那么就需要應用層手動提交事物。

idle-timeout

空閑時間。僅在minimum-idle小于maximum-poop-size的時候才會起作用。默認值10分鐘。根據應用實際情況做調整,對于一些間歇性流量達到峰值的應用,一般需要考慮設置的比間歇時間更大,防止創(chuàng)建數據庫連接拖慢了應用速度。

max-lifetime

連接池中連接的最大生命周期。當連接一致處于閑置狀態(tài)時,數據庫可能會主動斷開連接。為了防止大量的同一時間處于空閑連接因為數據庫方的閑置超時策略斷開連接(可以理解為連接雪崩),一般將這個值設置的比數據庫的“閑置超時時間”小幾秒,以便這些連接斷開后,HikariCP能迅速的創(chuàng)建新一輪的連接。

connection-timeout

連接超時時間。默認值為30s,可以接收的最小超時時間為250ms。但是連接池請求也可以自定義超時時間(com.zaxxer.hikari.pool.HikariPool#getConnection(long))。

#

# 配置數據源相關 使用 HikariCP 數據源

#

############################################################

# 等待連接池分配連接的最大時長(毫秒),超過這個時長還沒可用的連接則發(fā)生SQLException, 默認:30秒

spring.datasource.hikari.connection-timeout=30000# 最小連接數

spring.datasource.hikari.minimum-idle=5# 最大連接數

spring.datasource.hikari.maximum-pool-size=15# 自動提交

spring.datasource.hikari.auto-commit=true# 一個連接idle狀態(tài)的最大時長(毫秒),超時則被釋放(retired),默認:10分鐘

spring.datasource.hikari.idle-timeout=600000# 連接池名字

spring.datasource.hikari.pool-name=DatebookHikariCP

# 一個連接的生命時長(毫秒),超時而且沒被使用則被釋放(retired),默認:30分鐘 1800000ms,建議設置比數據庫超時時長少60秒,參考MySQL wait_timeout參數(show variables like‘%timeout%‘;) -->spring.datasource.hikari.max-lifetime=28740000spring.datasource.hikari.connection-test-query=SELECT 1

原文鏈接:https://blog.csdn.net/ling_76539446/article/details/102637024

總結

以上是生活随笔為你收集整理的hikaricp mysql_使用 HikariCP 数据源的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。