您好,登錄后才能下訂單哦!
這篇文章主要為大家展示了“SpringBoot集成Druid連接池進行SQL監控的示例分析”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“SpringBoot集成Druid連接池進行SQL監控的示例分析”這篇文章吧。
Druid連接池是阿里巴巴開源的數據庫連接池項目。Druid連接池為監控而生,內置強大的監控功能,監控特性不影響性能。
Druid的監控統計功能是通過filter-chain擴展實現,采集的信息非常全面,包括SQL執行、并發、慢查、執行時間區間分布等。并且Druid內置提供了一個StatViewServlet用于展示Druid的統計信息,提高html頁面展示非常完備的監控信息,可以快速診斷系統的瓶頸。
而Druid增加StatFilter之后,能采集大量統計信息,同時對性能基本沒有影響。StatFilter對CPU和內存的消耗都極小,對系統的影響可以忽略不計。監控不影響性能是Druid連接池的重要特性。
在SpringBoot工程中引入Druid連接池非常簡單。
首先需要引入pom
<dependency> <groupId>com.alibaba</groupId> <artifactId>druid-spring-boot-starter</artifactId> <version>1.2.6</version> </dependency>
在yml中增加一些配置
spring: http: encoding: charset: UTF-8 force: true enabled: true datasource: url: jdbc:mysql://xxx.xxx.xxx.xxx:3306/database?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai&useSSL=false username: root password : 123456 driverClassName : com.mysql.cj.jdbc.Driver type : com.alibaba.druid.pool.DruidDataSource druid: initialSize: 5 minIdle: 5 maxActive: 20 # 配置獲取連接等待超時的時間 maxWait: 60000 # 配置間隔多久才進行一次檢測,檢測需要關閉的空閑連接,單位是毫秒 timeBetweenEvictionRunsMillis: 60000 # 配置一個連接在池中最小生存的時間,單位是毫秒 minEvictableIdleTimeMillis: 300000 validationQuery: SELECT 1 FROM DUAL testWhileIdle: true testOnBorrow: false testOnReturn: false # 打開PSCache,并且指定每個連接上PSCache的大小 poolPreparedStatements: true maxPoolPreparedStatementPerConnectionSize: 20 # 配置監控統計攔截的filters,去掉后監控界面sql無法統計,'wall'用于防火墻 filters: stat,wall,log4j2 # 通過connectProperties屬性來打開mergeSql功能;慢SQL記錄 connectionProperties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000 # 合并多個DruidDataSource的監控數據 useGlobalDataSourceStat: true # StatViewServlet配置 sql監控 stat-view-servlet: enabled: true url-pattern: "/druid/*" reset-enable: false login-username: druid login-password: druid123 #允許那些ip allow: 127.0.0.1,192.168.120.93 #禁止那些ip deny: 192.168.120.93 # WebStatFilter配置 web-jdbc關聯監控 web-stat-filter: enabled: true url-pattern: "/*" exclusions: "*.js,*.gif,*.jpg,*.png,*.css,*.ico,/druid/*"
配置監控頁面訪問密碼,通過設置login-username 和 login-password這兩個初始參數。
allow和deny這兩個參數,可以做訪問控制。deny優先于allow,如果在deny列表中,就算在allow列表中,也會被拒絕。如果allow沒有配置或者為空,則只允許127.0.0.1訪問。
ip配置格式:<IP>或者 <IP>/<SUB_NET_MASK_size>
啟動服務后,訪問http://localhost:8080/druid 就可以訪問監控頁面。輸入訪問密碼后,可對系統運行情況進行監控。
監控web-jdbc關聯
以上是“SpringBoot集成Druid連接池進行SQL監控的示例分析”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。