日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關咨詢
選擇下列產品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關閉右側工具欄

新聞中心

這里有您想知道的互聯(lián)網營銷解決方案
SpringBoot整合Druid進行SQL監(jiān)控、SQL慢查詢

一、前言

當我們在企業(yè)開發(fā)時,數(shù)據(jù)庫連接池是一個至關重要的組成部分。一個優(yōu)秀的數(shù)據(jù)庫連接池可以顯著提高應用程序的性能和可伸縮性。在Java生態(tài)系統(tǒng)中,有很多連接池:Druid、HikariCP、C3P0等等,大部分都是使用Druid或者SpringBoot默認HikariCP!

創(chuàng)新互聯(lián)長期為成百上千家客戶提供的網站建設服務,團隊從業(yè)經驗10年,關注不同地域、不同群體,并針對不同對象提供差異化的產品和服務;打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網生態(tài)環(huán)境。為綿竹企業(yè)提供專業(yè)的成都做網站、網站建設,綿竹網站改版等技術服務。擁有十年豐富建站經驗和眾多成功案例,為您定制開發(fā)。

Druid有完整的SQL監(jiān)控平臺,下面來介紹和搭建一下吧!

二、Druid概念

  • Druid:Druid是一個開源的數(shù)據(jù)庫連接池和監(jiān)控工具,支持連接池、SQL監(jiān)控、性能調優(yōu)、防火墻、SQL注入等功能。
  • Druid數(shù)據(jù)源:Druid提供了一個高性能的數(shù)據(jù)庫連接池,可以在應用程序中使用Druid數(shù)據(jù)源來管理數(shù)據(jù)庫連接。
  • SQL監(jiān)控:Druid可以監(jiān)控應用程序中的SQL查詢執(zhí)行情況,包括查詢執(zhí)行時間、執(zhí)行次數(shù)等信息,并將其顯示在監(jiān)控頁面上。
  • 性能調優(yōu):Druid提供了一些性能調優(yōu)功能,如連接池的配置和管理、慢SQL日志等,幫助開發(fā)者優(yōu)化數(shù)據(jù)庫訪問性能。

三、Druid優(yōu)缺點

1、優(yōu)點

  • 高性能:Druid連接池是一個高性能的連接池,可以有效地管理數(shù)據(jù)庫連接,提高應用程序的性能。
  • 監(jiān)控功能:Druid提供了豐富的監(jiān)控功能,可以監(jiān)控SQL執(zhí)行情況、連接池狀態(tài)等,幫助開發(fā)者及時發(fā)現(xiàn)和解決性能問題。
  • 靈活配置:Druid提供了豐富的配置選項,可以根據(jù)應用程序的需求進行靈活配置。
  • 安全性:Druid提供了防火墻功能,可以阻止惡意SQL注入攻擊。

2、缺點

  • 依賴性:將Druid引入項目會增加項目的依賴,可能會影響構建和部署的復雜性。
  • 監(jiān)控頁面廣告:Druid的監(jiān)控頁面上可能會顯示廣告,有些用戶可能不喜歡這一點。

四、整合SpringBoot

1、導入依賴


    com.alibaba
    druid-spring-boot-starter
    1.2.15

2、配置yaml

為了方便打印慢SQL我們把慢SQL時間調的小一點。

server:
  port: 8087
spring:
  datasource:
    #使用阿里的Druid
    type: com.alibaba.druid.pool.DruidDataSource
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://127.0.0.1:3306/test?serverTimezone=UTC
    username: root
    password:
    druid:
      statViewServlet: # Druid監(jiān)控頁面配置
        enabled: true # 啟用Druid監(jiān)控頁面
        login-username: root # 監(jiān)控頁面登錄用戶名
        login-password: root # 監(jiān)控頁面登錄密碼
        url-pattern: /druid/* # 監(jiān)控頁面的訪問URL路徑
      web-stat-filter: # Druid Web統(tǒng)計過濾器配置
        enabled: true # 啟用Web統(tǒng)計過濾器
        session-stat-enable: true # 啟用會話統(tǒng)計功能
        session-stat-max-count: 1000 # 最大會話統(tǒng)計數(shù)量
      filter: # Druid過濾器配置
        stat: # SQL統(tǒng)計過濾器配置
          enabled: true # 啟用SQL統(tǒng)計過濾器
          log-slow-sql: true # 啟用慢SQL日志記錄
          slow-sql-millis: 10 # 慢SQL的執(zhí)行時間閾值(單位:毫秒)

mybatis-plus:
  configuration:
    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl

「強烈注意」:Spring Boot 2.X 版本不再支持配置繼承,多數(shù)據(jù)源的話每個數(shù)據(jù)源的所有配置都需要單獨配置,否則配置不會生效!

詳情可以去官方Github上看一下文檔:

Druid官方文檔:https://github.com/alibaba/druid/tree/master/druid-spring-boot-starter

3、測試

實體類什么的都省略了。

@GetMapping("/listTest")
public Result listTest(){
    return Result.success(testService.list(Wrappers.lambdaQuery().like(Test::getName, "d方")));
}

4、監(jiān)控頁面

訪問路徑:http://localhost:8087/druid/index.html。

點擊SQL監(jiān)控,查看SQL執(zhí)行的耗時情況,廣告很顯眼,剛剛也說了這是缺點,覺得不能忍受的可以去掉,百度一搜全是,這里就不展示了哈!

在日志里也會打印:

五、總結

這樣就簡單的完成了SQL監(jiān)控、慢SQL的查看,進而能夠進行優(yōu)化,提高系統(tǒng)效率!功能其實挺多的,大家可以挨個點開看看,要開啟Spring監(jiān)控要使用AOP對特定的接口做單獨的監(jiān)控!


標題名稱:SpringBoot整合Druid進行SQL監(jiān)控、SQL慢查詢
文章來源:http://www.5511xx.com/article/cciicee.html