国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

一文說清楚配置數據源的參數

開發 前端
假如鏈接池中的鏈接被數據庫關閉了,應用經過鏈接池getConnection時,均可能獲取到這些不可用的鏈接,且這些鏈接若是不被其余線程回收的話;它們不會被鏈接池廢除,也不會從新被建立,占用了鏈接池的名額,項目若是是服務端,數據庫連接被關閉,客戶端調用服務端就會出現大量的timeout,客戶端設置了超時時間,會主動斷開,服務端就會出現close_wait。

鑒于在開發環境中,我們都使用過yml配置文件,而且我們在yml配置文件中,都加入過連接數據庫的配置,也就是配置我們的連接池,但是對于不同的數據庫,連接數據庫的 Jar 包也都是不一樣的,而且對應的配置也是不一樣的,今天阿粉就來說說這個 SpringBoot 項目中的,配置數據庫連接的各種參數以及不同的數據庫,應該是如何配置的。

MySQL的配置

我們先來看配置,然后我們再看看各項配置是什么意思。

spring:

datasource:

name: test

url: jdbc:mysql://localhost:3306/test

username: root

password: xxx

# 使用druid數據源

type: com.alibaba.druid.pool.DruidDataSource

driver-class-name: com.mysql.jdbc.Driver

filters: stat

maxActive: 20

initialSize: 1

maxWait: 60000

minIdle: 1

timeBetweenEvictionRunsMillis: 60000

minEvictableIdleTimeMillis: 300000

validationQuery: select 'x'

testWhileIdle: true

testOnBorrow: false

testOnReturn: false

poolPreparedStatements: true

上面最簡單的 name,url,username,password,type 這些阿粉也就不多說了,阿粉需要說的是剩下的參數都是代表的什么含義。

filters

這里配置的是插件,常用的插件有:

監控統計: filter:stat

日志監控: filter:log4j 或者 slf4j

防御SQL注入: filter:wall

maxActive

連接池中最多支持多少個活動會話

initialSize

啟動程序時,在連接池中初始化多少個連接

maxWait

程序向連接池中請求連接時,超過maxWait的值后,認為本次請求失敗,即連接池沒有可用連接,單位毫秒,設置-1時表示無限等待

minIdle

回收空閑連接時,將保證至少有minIdle個連接.

timeBetweenEvictionRunsMillis

檢查空閑連接的頻率,單位毫秒, 非正整數時表示不進行檢查

minEvictableIdleTimeMillis

池中某個連接的空閑時長達到 N 毫秒后, 連接池在下次檢查空閑連接時,將回收該連接,要小于防火墻超時設置net.netfilter.nf_conntrack_tcp_timeout_established的設置

validationQuery

檢查池中的連接是否仍可用的 SQL 語句,drui會連接到數據庫執行該SQL, 如果正常返回,則表示連接可用,否則表示連接不可用

testWhileIdle

當程序請求連接,連接池在分配連接時,是否先檢查該連接是否有效。(高效)

testOnBorrow

程序申請連接時,進行連接有效性檢查(低效,影響性能)

一般的話,設置均為false

testOnReturn

程序返還連接時,進行連接有效性檢查(低效,影響性能)

一般的話,設置均為false

poolPreparedStatements

緩存通過以下兩個方法發起的SQL:

public PreparedStatement prepareStatement(String sql)

public PreparedStatement prepareStatement(String sql,int resultSetType, int resultSetConcurrency)

推薦設置為true

其實有些配置,我們是非常熟悉的,為什么這么說,因為經常會有那種連接被關閉的錯誤,而這個錯誤則是有可能是參數配置不合適導致的。

配置可能引發的一些問題

其實我們比較需要注意的就是 validationQuery?這個參數,validationQuery是用來驗證數據庫連接的查詢語句,這個查詢語句必須是至少返回一條數據的SELECT語句。每種數據庫都有各自的驗證語句,阿粉也收集了幾種常見數據庫的validationQuery。

  • hsqldb select 1 from INFORMATION_SCHEMA.SYSTEM_USERS
  • Oracle select 1 from dual
  • DB2 select 1 from sysibm.sysdummy1
  • MySql select 1
  • Microsoft SqlServer select1
  • postgresql select version()
  • ingres select 1
  • derby values 1
  • H2 select 1

而這個參數,一般是否執行,都是靠著 testOnBorrow? 還有 testOnReturn

testOnBorrow設置為true后如果要生效,validationQuery參數必須設置為非空字符串。

同樣的 testOnReturn 設置為true后如果要生效,validationQuery參數必須設置為非空字符串。

但是如果我們設置 testOnBorrow 為 false 的時候,也會出現一些些的問題,

假如鏈接池中的鏈接被數據庫關閉了,應用經過鏈接池getConnection時,均可能獲取到這些不可用的鏈接,且這些鏈接若是不被其余線程回收的話;它們不會被鏈接池廢除,也不會從新被建立,占用了鏈接池的名額,項目若是是服務端,數據庫連接被關閉,客戶端調用服務端就會出現大量的timeout,客戶端設置了超時時間,會主動斷開,服務端就會出現close_wait。

這也是為什么有時候在排查日志的時候,會出現一些 close_wait 的錯誤,雖然知道并不影響業務,但是日志上看著還是難受。

那么為什么還要設置成 false 呢?

因為 testOnBorrow? 能夠確保我們每次都能獲取到可用的連接,但如果設置成 true ,則每次獲取連接的時候都要到數據庫驗證連接有效性,這在高并發的時候會造成性能下降,可以將testOnBorrow設成false,testWhileIdle設置成true這樣能獲得比較好的性能。

這樣也會執行我們上面所說的 validationQuery 參數中的 SQL 來驗證連接的有效性。

這樣在每次連接失效之后,都會通過validationQuery 來進行驗證是否失效。

責任編輯:武曉燕 來源: Java極客技術
相關推薦

2025-07-09 03:10:00

倒排索引檢索

2021-07-31 23:14:26

OpenCL框架語言

2021-12-15 09:32:41

Linux系統負載

2025-02-19 10:49:24

2023-03-28 07:51:56

CPU主板平臺

2020-05-11 07:57:33

區塊鏈分布式鏈上

2021-02-11 08:08:09

Spring Boot配置架構

2019-07-04 09:13:04

中臺百度團隊

2021-02-25 08:21:38

高可用風險故障

2020-04-15 16:34:48

大數據質量標準

2024-09-23 05:10:00

微服務CORSSpringBoot

2020-03-02 15:17:37

云原生CNCF容器

2019-12-06 09:16:23

Linux 開源操作系統

2025-02-05 09:17:40

2018-11-28 11:08:30

并查集集合數據結構

2022-07-21 21:19:48

元宇宙

2020-10-29 10:35:53

Nginx架構服務器

2021-01-27 08:12:04

Dotnet函數數據

2021-09-15 06:55:34

異步LinqC#

2022-11-11 15:49:41

MySQL隔離
點贊
收藏

51CTO技術棧公眾號

国产一区一区| 亚洲欧美成人| 3atv在线一区二区三区| 国产在线导航| 国产精品不卡一区二区三区| 成人小视频在线观看免费| 国产日韩一区二区三区在线| 性欧美办公室18xxxxhd| 国产精品亚洲成人| 青青草国产精品一区二区| 丁香六月激情婷婷| 欧美日韩精品免费观看视完整| 久久最新资源网| 1769免费视频在线观看| 欧美三级在线看| 在线黄色国产电影| 国产精品免费观看视频| 日韩一级理论片| 欧美国产1区2区| 男女av免费观看| 不卡一卡二卡三乱码免费网站| 成人av在线播放观看| 成人涩涩免费视频| 国产第一页视频| 国产蜜臀97一区二区三区 | 国产盗摄xxxx视频xxx69| 精品自拍偷拍| 国产精品久久久久久久久久东京| 国产96在线亚洲| 欧美亚洲日本黄色| 久久国产电影| 91精品久久香蕉国产线看观看 | 欧美精品激情blacked18| 51亚洲精品| 秋霞av国产精品一区| 色喇叭免费久久综合网| 精品国产免费人成电影在线观...| 美女诱惑一区| 少妇高潮大叫好爽喷水| 久久久不卡网国产精品一区| 色偷偷亚洲第一综合| 亚洲一区免费视频| 免费a级在线播放| 亚洲男子天堂网| 国内精品国产成人国产三级粉色| 国产欧美精品久久久| 欧美专区在线| 欧美s码亚洲码精品m码| 一区二区三区日韩| 成人三级网址| 最好看的2019的中文字幕视频| 午夜视频国产| 久久久电影免费观看完整版| 欧美hdxxx| 毛片在线播放视频| 国产午夜精品一区二区三区嫩草| 免费黄视频网站| 欧美一级免费观看| 日韩成人在线电影| 成人亚洲激情网| 日韩av一区二区三区四区| 国产成人亚洲精品无码h在线 | 丰满的少妇愉情hd高清果冻传媒| 自拍偷在线精品自拍偷无码专区| 国产高清在线看| 日韩在线视频导航| 亚洲精彩视频| 国产亚洲黄色片| 日韩欧美中文字幕在线播放| 久久uomeier| 成人福利网站在线观看| 欧美mv和日韩mv的网站| 深爱激情综合| 777永久免费网站国产| 黄色片免费在线观看视频| 国产美女精品在线| 亚洲va天堂va国产va久| 欧美18xxxxx| 日韩女优毛片在线| 嫩草伊人久久精品少妇av杨幂| 亚洲色图35p| 欧美wwwww| 亚洲天堂av免费在线观看| 国产精品欧美一区二区三区| 国内av一区二区三区| 在线成人激情黄色| 午夜在线播放视频欧美| 国产免费成人在线| 欧美激情精品久久久| 色婷婷av一区二区三区丝袜美腿| 亚洲国产欧美久久| 好久没做在线观看| 国产精品揄拍500视频| 国产aⅴ精品一区二区三区色成熟| 亚洲男人资源| 亚洲精品成人久久| 香蕉久久精品日日躁夜夜躁| 国产伦视频一区二区三区| 欧美日韩一区二区免费视频| 欧美猛男男男激情videos| www污污在线| 50度灰在线观看| 久久99久国产精品黄毛片入口| 日韩午夜电影| 导航福利在线| 69视频在线免费观看| 国产在线精品一区二区三区不卡 | 日韩有码在线观看| 国产精品毛片在线| av三级在线播放| 久久久久五月天| 成人动漫av在线| 蜜桃麻豆影像在线观看| 久久综合久久久| 欧美自拍丝袜亚洲| 精品日产免费二区日产免费二区| 激情内射人妻1区2区3区 | 青青青草视频在线| 草莓视频一区| 精品国产乱码久久久久久天美| 国产香蕉精品| 99草草国产熟女视频在线| 综合网中文字幕| 国产精品99久久久久久有的能看| 国模私拍视频在线播放| 欧美日韩一区二区视频在线观看 | 三区在线视频| 国产在线精品播放| 亚洲成av人在线观看| 日韩精品一卡| 写真福利理论片在线播放| 国产成人+综合亚洲+天堂| 亚洲欧洲美洲综合色网| 精品国产一区二区三区成人影院| 国产野外作爱视频播放| 98精品国产高清在线xxxx天堂| 国产精品欧美经典| 要久久爱电视剧全集完整观看| av二区三区| 国产精品高潮视频| 一区二区三区日韩欧美| 国产欧美日韩精品一区二区三区| 玖玖在线免费视频| 亚洲专区国产精品| 91精品国产综合久久久久| 另类小说视频一区二区| 久久久久久一区二区三区四区别墅| 一女被多男玩喷潮视频| 98精品国产自产在线观看| 婷婷夜色潮精品综合在线| 欧美日本精品| 好看的中文字幕在线播放| 黄色三级中文字幕| 久久久人成影片一区二区三区观看| 国产精品国产三级国产普通话三级| 嫩草影视亚洲| 国产免费a∨片在线观看不卡| 日本一区二区免费看| 亚洲人精品午夜在线观看| 国产午夜精品福利| 蜜桃成人av| av在线资源网| 欧美日韩dvd| 久久久久久国产精品| 精品国产鲁一鲁一区二区张丽| 西西人体一区二区| 国产美女亚洲精品7777| 亚洲美女欧洲| 亚洲自拍的二区三区| 国内精品视频一区| 在线观看91视频| 成人自拍视频在线观看| 欧美日韩爱爱| 精品一性一色一乱农村| 色www免费视频| 极品尤物一区二区三区| 久久精品人人做人人爽| 欧美日韩一区二区精品| 国产一区二区三区在线观看精品| 日韩精品丝袜美腿| 麻豆av在线免费看| 天天影视综合色| 免费国产一区二区| 97国产在线观看| 精品久久人人做人人爽| 亚洲欧洲日韩av| 日本成人在线视频网站| 色先锋久久影院av| 91www在线| 在线视频国产三级| 丁香色欲久久久久久综合网| 国产精品人人做人人爽| 亚洲欧美日韩综合| 黑人巨大精品欧美一区二区免费| 国产成人福利片| 亚洲无吗在线| 99re8这里有精品热视频免费| 免费网站免费进入在线| 色老板在线视频| 自慰无码一区二区三区|