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

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
SpringBoot應(yīng)用監(jiān)控常見(jiàn)方案梳理

[[380259]]

創(chuàng)新互聯(lián)一直通過(guò)網(wǎng)站建設(shè)和網(wǎng)站營(yíng)銷幫助企業(yè)獲得更多客戶資源。 以"深度挖掘,量身打造,注重實(shí)效"的一站式服務(wù),以成都網(wǎng)站制作、做網(wǎng)站、移動(dòng)互聯(lián)產(chǎn)品、成都營(yíng)銷網(wǎng)站建設(shè)服務(wù)為核心業(yè)務(wù)。10余年網(wǎng)站制作的經(jīng)驗(yàn),使用新網(wǎng)站建設(shè)技術(shù),全新開(kāi)發(fā)出的標(biāo)準(zhǔn)網(wǎng)站,不但價(jià)格便宜而且實(shí)用、靈活,特別適合中小公司網(wǎng)站制作。網(wǎng)站管理系統(tǒng)簡(jiǎn)單易用,維護(hù)方便,您可以完全操作網(wǎng)站資料,是中小公司快速網(wǎng)站建設(shè)的選擇。

應(yīng)用監(jiān)控是我們?cè)谏a(chǎn)環(huán)境下一個(gè)非常重要的東西,運(yùn)維人員不可能 24 小時(shí)盯著應(yīng)用,應(yīng)用掛了及時(shí)解決,這不現(xiàn)實(shí)。我們需要能夠?qū)崟r(shí)掌握應(yīng)用的運(yùn)行數(shù)據(jù),以便提早發(fā)現(xiàn)問(wèn)題,同時(shí)在應(yīng)用掛掉的時(shí)候還能夠自動(dòng)報(bào)警,這樣才能解放開(kāi)發(fā)人員。

Spring Boot 中也提供了生產(chǎn)級(jí)的應(yīng)用監(jiān)控方案,對(duì)于單體應(yīng)用、微服務(wù)應(yīng)用都有相應(yīng)的解決方案,今天松哥就想來(lái)和大家捋一捋 Spring Boot 中的應(yīng)用監(jiān)控方案都有哪些。

首先我們來(lái)捋一下應(yīng)用監(jiān)控都需要哪些東西?其實(shí)就兩點(diǎn):

  1. 信息采集器
  2. 數(shù)據(jù)可視化 UI

信息采集器會(huì)收集應(yīng)用的健康、審計(jì)、指標(biāo)、HTTP 請(qǐng)求等信息,并將之暴露出來(lái),數(shù)據(jù)可視化 UI 則會(huì)通過(guò)儀表盤、圖形等展示這些數(shù)據(jù),并對(duì)數(shù)據(jù)進(jìn)行分析、報(bào)警等處理。我們分別來(lái)看。

Spring Boot Actuator在 Spring Boot 項(xiàng)目中,我們使用的信息采集器主要就是 Spring Boot Actuator,這個(gè)模塊由 Spring Boot 官方提供,它包含了許多生產(chǎn)級(jí)別的功能,例如健康檢查、審計(jì)、指標(biāo)收集、HTTP 請(qǐng)求追蹤等,Spring Boot Actuator 將這些信息收集起來(lái)后,通過(guò) HTTP 和 JMX 兩種方式暴露給外部模塊。例如 Spring Boot Actuator 通過(guò) /health 端點(diǎn)(endpoints)提供了應(yīng)用的健康信息,開(kāi)發(fā)者只需要訪問(wèn)該端點(diǎn)就可以看到應(yīng)用的健康信息,但是這些端點(diǎn)返回的數(shù)據(jù)是 JSON 格式的,不方便查看,也不方便分析,所以一般情況下,Spring Boot Actuator 都是和一些外部模塊一起使用。

Spring Boot Actuator

支持的端點(diǎn)主要有如下一些:

如果是 Web 應(yīng)用,則再次基礎(chǔ)上還支持如下端點(diǎn):

提到 Spring Boot Actuator,就還有一個(gè)東西需要和大家介紹,那就是 Micrometer,從 Spring Boot2.0 開(kāi)始,Actuator 底層改為了 Micrometer。

當(dāng)我們?cè)谝粋€(gè) Spring Boot 項(xiàng)目中引入 Actuator 依賴之后,我們會(huì)發(fā)現(xiàn)它里邊包含了 Micrometer:

這個(gè)依賴又是干什么的呢?

Micrometer 為 Java 平臺(tái)上的性能數(shù)據(jù)收集提供了一個(gè)通用的 API,應(yīng)用程序只需要使用 Micrometer 的通用 API 來(lái)收集性能指標(biāo)即可,而 Micrometer 則會(huì)負(fù)責(zé)完成與不同監(jiān)控系統(tǒng)的適配工作,類似于一個(gè) Adapter,有了這個(gè) Adapter,切換監(jiān)控系統(tǒng)就變得非常容易。同時(shí) Micrometer 還支持推送數(shù)據(jù)到多個(gè)不同的監(jiān)控系統(tǒng)。

而 Spring Boot Actuator 使用 Micrometer 與外部應(yīng)用監(jiān)視系統(tǒng)進(jìn)行集成,這樣一來(lái),開(kāi)發(fā)者只需要稍微配置一下就可以使其和外部應(yīng)用監(jiān)視系統(tǒng)進(jìn)行整合了。Micrometer 支持的監(jiān)控系統(tǒng)有:

  • AppOptics
  • Atlas
  • Datadog
  • Dynatrace
  • Elastic
  • Ganglia
  • Graphite
  • Humio
  • Influx
  • JMX
  • KairosDB
  • New Relic
  • Prometheus
  • SignalFx
  • Simple (in-memory)
  • StatsD
  • Wavefront

信息采集器這塊,老實(shí)說(shuō)松哥見(jiàn)到的大部分項(xiàng)目都是用的 Spring Boot Actuator,似乎沒(méi)有其他更好的選擇。如果小伙伴們有用到其他方案,也可以留言討論。

接下來(lái)我們來(lái)看看一些常用的應(yīng)用監(jiān)控可視化工具。

Spring Boot Admin

這個(gè)算是 Spring Boot 中最最正宗的應(yīng)用監(jiān)控可視化工具了,看名字就知道有多正宗,當(dāng)我們創(chuàng)建一個(gè) Spring Boot 項(xiàng)目時(shí),選擇依賴時(shí)候就有這個(gè)選項(xiàng):

如果是單體應(yīng)用很多人可能會(huì)選擇 Spring Boot Admin 作為監(jiān)控?cái)?shù)據(jù)可視化工具,不過(guò)它也支持微服務(wù)應(yīng)用的(可以通過(guò) Eureka、Consul 等注冊(cè)中心獲取應(yīng)用信息),只不過(guò)在微服務(wù)中,我們可能會(huì)更多的選擇 Grafana+Prometheus 組合。

Spring Boot Admin 主要包含如下功能:

  • 顯示應(yīng)用健康信息。
  • 顯示應(yīng)用運(yùn)行的詳細(xì)信息,例如 JVM 和內(nèi)存指標(biāo)、數(shù)據(jù)源指標(biāo)、緩存指標(biāo)等等。
  • 顯示應(yīng)用的構(gòu)建信息。
  • 查看 JVM 系統(tǒng)和環(huán)境屬性
  • 查看 Spring Boot 配置屬性
  • 支持 Spring Cloud 中的端點(diǎn)刷新功能 /refresh-endpoint
  • 方便的日志級(jí)別管理功能
  • 可以與 JMX-beans 進(jìn)行交互
  • 查看 Thread dump
  • 查看 http 請(qǐng)求
  • 查看計(jì)劃任務(wù)
  • 查看和刪除活動(dòng)會(huì)話
  • 查看 Flyway/Liquibase 數(shù)據(jù)庫(kù)遷移
  • 下載 heapdump
  • 狀態(tài)更改通知
  • ...

可以看到,Spring Boot Admin 不僅僅是將 Actuator 接口中的數(shù)據(jù)進(jìn)行可視化,還在此基礎(chǔ)上提供了分析、報(bào)警等功能。

Spring Boot Admin 的顯示界面如下:

Grafana+Prometheus

這個(gè)組合在微服務(wù)項(xiàng)目中比較常見(jiàn),松哥之前錄制的 Spring Cloud 視頻里邊也有講到。

Prometheus 是一款開(kāi)源的監(jiān)控 + 時(shí)序數(shù)據(jù)庫(kù) + 報(bào)警軟件,由SoundCloud 公司開(kāi)發(fā)的,在 CNCF 基金會(huì)托管并已成功孵化,不過(guò)這個(gè) Prometheus 的 UI 比較簡(jiǎn)單,用戶體驗(yàn)不怎么好,現(xiàn)在都流行大屏監(jiān)控頁(yè)面,上面展示各種炫酷的圖表。所以在實(shí)際應(yīng)用中,Prometheus 一般都是結(jié)合 Grafana 一起來(lái)使用,Grafana 也是一個(gè)開(kāi)源的跨平臺(tái)度量分析和可視化 + 告警工具,它支持多種數(shù)據(jù)源,包括 Prometheus,Grafana 的 UI 就比較炫酷,如下:

當(dāng)然,使用這套組合也離不開(kāi) Spring Boot Actuator。

小結(jié)

前面跟小伙伴們分享了 Spring Boot 應(yīng)用監(jiān)控的主流方案,沒(méi)說(shuō)具體用法,后面抽空松哥會(huì)和大家聊一聊具體用法。除了這些主流的方案之后,還有很多小眾的方案,松哥也見(jiàn)到有極少數(shù)項(xiàng)目團(tuán)隊(duì)自研應(yīng)用監(jiān)控方案。不過(guò)對(duì)于大多數(shù)的項(xiàng)目而言,這些現(xiàn)成的成熟方案無(wú)疑是最佳選擇。

好啦,今天就先和小伙伴們聊這么多,后面我們?cè)賮?lái)看具體用法~

本文轉(zhuǎn)載自微信公眾號(hào)「江南一點(diǎn)雨」,可以通過(guò)以下二維碼關(guān)注。轉(zhuǎn)載本文請(qǐng)聯(lián)系江南一點(diǎn)雨公眾號(hào)。

 


本文標(biāo)題:SpringBoot應(yīng)用監(jiān)控常見(jiàn)方案梳理
鏈接地址:http://www.5511xx.com/article/cdgscje.html