SpringBoot集成Druid監(jiān)控頁面最小化配置操作
在項(xiàng)目中使用阿里的druid連接池,pom文件配置:
<dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <scope>runtime</scope> </dependency> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid-spring-boot-starter</artifactId> <version>1.1.14</version> </dependency>
application.properties配置,官方文檔可查:
# Druid連接池配置,官方配置參考:https://github.com/alibaba/druid/tree/master/druid-spring-boot-starter spring.datasource.url=jdbc:mysql://localhost:3306/test?serverTimezone=Asia/Shanghai spring.datasource.username=root spring.datasource.password=123456 spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver spring.datasource.type=com.alibaba.druid.pool.DruidDataSource # Druid其他配置 spring.datasource.druid.initial-size=5 spring.datasource.druid.max-active=20 spring.datasource.druid.min-idle=10 spring.datasource.druid.max-wait=10 spring.datasource.druid.filters=stat,wall spring.datasource.druid.filter.stat.log-slow-sql=true spring.datasource.druid.filter.stat.slow-sql-millis=2000 # Druid WebStatFilter配置,說明請(qǐng)參考Druid Wiki,配置_配置WebStatFilter spring.datasource.druid.web-stat-filter.enabled=true spring.datasource.druid.web-stat-filter.url-pattern=/* spring.datasource.druid.web-stat-filter.exclusions=*.gif,*.png,*.jpg,*.html,*.js,*.css,*.ico,/druid/* # Druid StatViewServlet配置,說明請(qǐng)參考Druid Wiki,配置_StatViewServlet配置 spring.datasource.druid.stat-view-servlet.enabled=true spring.datasource.druid.stat-view-servlet.url-pattern=/druid/* spring.datasource.druid.stat-view-servlet.reset-enable=true spring.datasource.druid.stat-view-servlet.login-username=admin spring.datasource.druid.stat-view-servlet.login-password=admin spring.datasource.druid.stat-view-servlet.allow= spring.datasource.druid.stat-view-servlet.deny=
OK,搞定~
接下來,啟動(dòng)項(xiàng)目,打開地址:http://localhost:8080/druid
頁面長(zhǎng)這樣:
我來請(qǐng)求一下接口,查詢sql,確實(shí)監(jiān)控到了:
補(bǔ)充知識(shí):druid 配置理解及監(jiān)控界面參數(shù)理解
druid 配置理解
官方文檔中的很多配置,不是太理解或者貌似理解了,自己不實(shí)踐一下,心里也不踏實(shí),所以決定自己搞一個(gè)demo測(cè)試一下理解理解各個(gè)配置到底是什么意思
一、druidDataSource 配置
參數(shù)名稱 | 我的理解 | 官方說明 |
---|---|---|
pool-prepared-statements | preparedStatement的創(chuàng)建會(huì)消耗很多的系統(tǒng)資源,同樣的sql可以重用preparedStatement | 是否緩存preparedStatement,也就是PSCache。PSCache對(duì)支持游標(biāo)的數(shù)據(jù)庫(kù)性能提升巨大,比如說oracle。在mysql下建議關(guān)閉 |
initial-size | 初始化連接數(shù) | 連接池建立時(shí)創(chuàng)建的初始化連接數(shù) |
max-pool-prepared-statement-per-connection-size | 這個(gè)我不是太確定,這個(gè)應(yīng)該是PSCache的緩存大小吧,官方說可以給大一點(diǎn),單位也不清楚,那就給100吧 | … |
validation-query | 這個(gè)配置還是很容易理解的,關(guān)鍵是怎么去驗(yàn)證一下,比如在testOnBorrow=true,當(dāng)申請(qǐng)鏈接時(shí),確實(shí)會(huì)執(zhí)行validation-query.我是這樣驗(yàn)證的,validation-query=select 1 from dualss(有語法錯(cuò)誤的sql),結(jié)果在申請(qǐng)鏈接的時(shí)候就報(bào)錯(cuò)了,證明在testOnBorrow的時(shí)候確實(shí)執(zhí)行了validation-query,后面的testOnReturn,testWhileIdle我沒有驗(yàn)證,應(yīng)該都一樣 | 用來檢測(cè)連接是否有效的sql,要求是一個(gè)查詢語句,常用select ‘x'。如果validationQuery為null,testOnBorrow、testOnReturn、testWhileIdle都不會(huì)起作用。 |
validation-query-timeout | 不知道怎么驗(yàn)證 | … |
test-on-borrow | 不知道怎么驗(yàn)證,因?yàn)闊o論是true,還是false,只要validation-query有值,都會(huì)執(zhí)行一下validation-query | |
test-on-return | 不知道怎么驗(yàn)證 | |
test-while-idle | 不知道怎么驗(yàn)證 | |
time-between-eviction-runs-millis | 默認(rèn)是1分鐘,就是destory每隔1分鐘會(huì)執(zhí)行一次 |
二、后臺(tái)監(jiān)控頁面中的各數(shù)值的含義
我的端口是8585,就是如下圖這個(gè)界面中每行
參數(shù)名稱 | 中文 | 我的理解 | 官方說明 |
---|---|---|---|
ActiveCount | 活躍連接數(shù) | 有n個(gè)連接正在執(zhí)行sql,那么這個(gè)值就為n | 當(dāng)前連接池中活躍連接數(shù) |
InitialSize | 初始化連接大小 | 默認(rèn)就是項(xiàng)目啟動(dòng)就會(huì)初始化的連接數(shù) | 連接池建立時(shí)創(chuàng)建的初始化連接數(shù) |
LogicConnectCount | 邏輯連接打開次數(shù) | 與MaxActive沒有關(guān)系,連接被用一次,LogicConnectCount就會(huì)+1,就是連接池中的連接被用次數(shù)綜合 | 產(chǎn)生的邏輯連接建立總數(shù) |
minEvictableIdleTimeMillis | 連接保持空閑而不被驅(qū)逐的最小時(shí)間 |
以上這篇SpringBoot集成Druid監(jiān)控頁面最小化配置操作就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
- SpringBoot集成阿里巴巴Druid監(jiān)控的示例代碼
- 使用SpringBoot簡(jiǎn)單了解Druid的監(jiān)控系統(tǒng)的配置方法
- SpringBoot配置Druid數(shù)據(jù)監(jiān)控代碼實(shí)例
- SpringBoot對(duì)Druid配置SQL監(jiān)控功能失效問題及解決方法
- springboot項(xiàng)目中實(shí)現(xiàn)訪問druid內(nèi)置監(jiān)控頁面
- SpringBoot集成Druid連接池進(jìn)行SQL監(jiān)控的問題解析
- SpringBoot整合Druid實(shí)現(xiàn)數(shù)據(jù)庫(kù)連接池和監(jiān)控
- SpringBoot3整合Druid監(jiān)控功能的項(xiàng)目實(shí)踐
- SpringBoot集成Druid實(shí)現(xiàn)監(jiān)控功能的示例代碼
- springboot關(guān)閉druid監(jiān)控 druid2改配置文件無效的解決
- Springboot整合Druid實(shí)現(xiàn)對(duì)訪問的監(jiān)控方式
- SpringBoot+Druid開啟監(jiān)控頁面的實(shí)現(xiàn)示例
相關(guān)文章
Java中處理金額計(jì)算之使用Long還是BigDecimal詳解
在Java后端開發(fā)中處理與錢有關(guān)的業(yè)務(wù)時(shí),確保金額計(jì)算的準(zhǔn)確性和避免錯(cuò)誤非常重要,這篇文章主要給大家介紹了關(guān)于Java中處理金額計(jì)算之使用Long還是BigDecimal的相關(guān)資料,需要的朋友可以參考下2024-07-07SpringBoot結(jié)合Vue實(shí)現(xiàn)投票系統(tǒng)過程詳解
這篇文章主要介紹了SpringBoot+Vue框架實(shí)現(xiàn)投票功能的項(xiàng)目系統(tǒng),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧2022-09-09Spring Security使用多種加密方式進(jìn)行密碼校驗(yàn)的代碼示例
在Web應(yīng)用中,密碼的安全存儲(chǔ)和驗(yàn)證是至關(guān)重要的,本文將通過一個(gè)具體的代碼示例,介紹和總結(jié)如何在Spring Security中使用多種加密方式進(jìn)行密碼校驗(yàn),文中通過代碼講解得非常詳細(xì),需要的朋友可以參考下2024-06-06GC調(diào)優(yōu)實(shí)戰(zhàn)之過早提升Premature?Promotion
這篇文章主要為大家介紹了GC調(diào)優(yōu)實(shí)戰(zhàn)之過早提升Premature?Promotion2022-01-01詳解jenkins自動(dòng)部署springboot應(yīng)用的方法
這篇文章主要介紹了詳解jenkins自動(dòng)部署springboot應(yīng)用的方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-08-08springmvc 獲取@Requestbody轉(zhuǎn)換的異常處理方式
這篇文章主要介紹了springmvc 獲取@Requestbody轉(zhuǎn)換的異常處理方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-07-07Maven學(xué)習(xí)教程之搭建多模塊企業(yè)級(jí)項(xiàng)目
本篇文章主要介紹了Maven學(xué)習(xí)教程之搭建多模塊企業(yè)級(jí)項(xiàng)目 ,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-10-10SpringBoot項(xiàng)目War包部署無法注冊(cè)到Nacos中的解決
這篇文章主要介紹了SpringBoot項(xiàng)目War包部署無法注冊(cè)到Nacos中的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-01-01Java中的Semaphore信號(hào)量使用方法代碼實(shí)例
這篇文章主要介紹了Java中的Semaphore信號(hào)量使用方法代碼實(shí)例,Semaphore是一種基于計(jì)數(shù)的信號(hào)量,它可以設(shè)定一個(gè)閾值,基于此,多個(gè)線程競(jìng)爭(zhēng)獲取許可信號(hào),做自己的申請(qǐng)后歸還,超過閾值后,線程申請(qǐng)?jiān)S可信號(hào)將會(huì)被阻塞,需要的朋友可以參考下2023-11-11