DruidMonitorとは
Druidは非常に強力なデータベース接続プールですが、その能力は、高性能接続プールとしてのデータアクセスと接続管理の速度に反映されるだけでなく、強力な監視ツールであるDruidMonitorが組み込まれています。データソースと低速クエリを監視できるだけでなく、Webアプリケーション、URI監視、セッション監視、Spring監視なども監視できます。
-
ip:port / druid / sql.html
ウェルフェアウェルフェアウェルフェア無料で受け取るJavaアーキテクチャスキルマップ無料で送信できることに注意してください
、
必要な+ Vを無料で入手
DruidAdminとは
-
前述のように、Druid Monitorは強力な監視機能を提供しますが、現在は単一のサービスインスタンスを監視するためだけのものです。最近ますます普及しているマイクロサービスアーキテクチャ[1]では、同じサービスにN個のインスタンスがある場合があり、監視対象のディメンションはクラスターに到達する必要があります。
-
druid 1.2.1の公式バージョンの後、クラスター監視の問題を解決するためにdruid-admin [2]モジュールが提供されます。
-
次の図に示すように、元の監視クラスターのサービス名を動的に切り替えて、監視エントリを実現し、さまざまなサービスの監視切り替えを実現できます。
Spring CloudStaterパッケージ
-
公式のdruid-adminは現在開発中であり、直接コンパイルして実行することはできません(パッケージエラー、java11がサポートされていないなどによって異なります)。
-
druid-admin自体は直接実行可能なWebサービスであり、既存のサービスにはあまり馴染みがなく、Spring BootAdminのプラグアンドプレイを実行できません[3]。
-
したがって、上記の問題に基づいて、著者はdruid-adminに関連する変更を加え、それをスプリングブートスターターに直接抽出して使用できるように導入しました。
1.依存度を高める
<dependency>
<groupId>com.pig4cloud.plugin</groupId>
<artifactId>spring-cloud-starter-druid-monitor</artifactId>
<version>0.0.1</version>
</dependency>
<!--注册中心客户端(支持 nacos/eureka/consul)-->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>
复制代码
2.レジストリおよび監視対象のサービスのリストへのアクセス
spring:
cloud:
nacos:
discovery:
server-addr: 127.0.0.1:8848
# druid-admin 需要监控的列表
monitor:
applications:
- pigx-upms-biz
- pigx-auth
复制代码
3.ターゲットサービスは、ドルイド監視エンドポイントを公開します
spring:
datasource:
druid:
stat-view-servlet:
enabled: true
allow: ""
url-pattern: /druid/*
复制代码
4. druid-adminにアクセスして、クラスターの監視を表示します
-
ip:port / druid / sql.html
Spring BootAdminを統合する
-
上記の依存関係を導入し、次の構成を追加します
spring:
boot:
admin:
ui:
external-views:
- label: "SQL监控"
url: /druid/sql.html
order: 2000
复制代码
使用制限
-
druidモニターのログイン検証はセッション設計に基づいているため、ステートレスマイクロサービスには適用できません。ドルイド関連のすべてのエンドポイントを直接公開し、フロントゲートウェイを介してインターフェイスのアクセス許可を統合することをお勧めします。
-
現在のインスタンス監視データは対応するメモリに保存され、表示中に各インスタンスによって要約された後にのみ表示され、後で保持されます。