偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

Prometheus 系列開篇:為什么要學(xué) Prometheus ?

安全 應(yīng)用安全
第一次接觸 Prometheus 是在去年,我工作了六年的時(shí)間點(diǎn)上。但現(xiàn)在看來,工作六年才知道 Prometheus 是有點(diǎn)晚了,因?yàn)?Prometheus 確實(shí)比較重要。

[[346122]]

首發(fā)于公眾號@陳樹義,用最簡單的語言,分享我的技術(shù)見解。

 第一次接觸 Prometheus 是在去年,我工作了六年的時(shí)間點(diǎn)上。但現(xiàn)在看來,工作六年才知道 Prometheus 是有點(diǎn)晚了,因?yàn)? Prometheus 確實(shí)比較重要。個(gè)人感覺 Prometheus 在你 3-5 年之時(shí)就應(yīng)該了解,并且應(yīng)該掌握關(guān)于它的一整套知識,最終你應(yīng)該掌握:如何從零去搭建一套業(yè)務(wù)監(jiān)控系統(tǒng)!

說到 Prometheus,大多數(shù)人可能不太清楚它是做什么的。即使知道它是做監(jiān)控的,也不明白為什么要做監(jiān)控。這其中涉及到許多原因,我想主要有下面兩點(diǎn)原因。

第一,全局觀不足。 許多開發(fā)同學(xué)長期在一線開發(fā),局限于自己開發(fā)的需求上,對整個(gè)系統(tǒng)不了解,對整個(gè)系統(tǒng)業(yè)務(wù)不了解。只有當(dāng)你做了 leader 之后,你才會(huì)更關(guān)注系統(tǒng)的整體情況。而如果你當(dāng)了 leader,你會(huì)發(fā)現(xiàn)業(yè)務(wù)監(jiān)控系統(tǒng)是多么重要!(畢竟,你也不想半夜被電話吵醒,睡眼惺忪地打開電腦解決問題~)

第二,工作經(jīng)驗(yàn)欠缺。 剛剛工作一兩年的同學(xué),對于 Java 整個(gè)知識體系還學(xué)得不夠全面。而 Prometheus 的監(jiān)控知識更多屬于進(jìn)階的知識,自然會(huì)被排到更后面的位置。

除了前面說到的這兩個(gè)主要原因,其實(shí)也還有一些其他原因,例如:公司技術(shù)體系問題等等。

言歸正傳,那 Prometheus 到底是做什么的,為什么要學(xué)習(xí) Prometheus 呢?

什么是 Prometheus?

Prometheus(普羅米修斯)是古希臘的一個(gè)神明,名字的意思是「先見之明」。從它的名字可以看出,Prometheus 是做「先見之明」的監(jiān)控告警用途。維基百科簡單寫了它的作用:Prometheus is a free software application used for event monitoring and alerting(Prometheus 是用來監(jiān)控、報(bào)警的免費(fèi)軟件)。

Prometheus 官網(wǎng)則是用「From metrics to insight」(用指標(biāo)洞察系統(tǒng)的意思)描述了 Prometheus 的用途。

看到這里我們大概知道 Prometheus 其實(shí)就是一個(gè)數(shù)據(jù)監(jiān)控解決方案,它能幫你簡單快速地搭建起一套可視化的監(jiān)控系統(tǒng)。 但這么說還是有點(diǎn)抽象,下面我舉幾個(gè)簡單的例子,幫助大家理解 Prometheus 究竟能做什么?

對于運(yùn)維人員來說,他們需要監(jiān)控機(jī)器的 CPU、內(nèi)存、硬盤的使用情況,以此來保證運(yùn)行在機(jī)器上的應(yīng)用的穩(wěn)定性。

對于研發(fā)人員來說,他們關(guān)注某個(gè)異常指標(biāo)的變化情況,從而來保證業(yè)務(wù)的穩(wěn)定運(yùn)行。

對于產(chǎn)品或運(yùn)營來說,他們更關(guān)心產(chǎn)品層面的事情,例如:某個(gè)活動(dòng)參加人數(shù)的增長情況,活動(dòng)積分的發(fā)放情況。

對于上面說到的這些功能,Prometheus 都能夠?qū)崿F(xiàn)。Prometheus 能根據(jù)這些收集的數(shù)據(jù)實(shí)現(xiàn)告警功能。

例如:運(yùn)維希望在 CPU 達(dá)到 80% 的時(shí)候給值班的運(yùn)維人員發(fā)送郵件,產(chǎn)品希望活動(dòng)積分發(fā)放數(shù)量超過 10 萬的時(shí)候發(fā)送告警郵件。這些都可以通過 Prometheus 實(shí)現(xiàn)。

除了數(shù)據(jù)收集、告警功能之外,Prometheus 還有很多強(qiáng)大的功能,例如:強(qiáng)大的 ProQL 查詢、許多客戶端庫等。

因?yàn)?Prometheus 功能強(qiáng)大、構(gòu)建成本低,所以現(xiàn)在越來越多的公司都使用 Prometheus 作為其數(shù)據(jù)監(jiān)控的解決方案。

為什么要學(xué) Prometheus?

對于一直在一線開發(fā)的同學(xué)而言,你可能只需要把自己的需求做好、沒有 bug、順利上線,那么你的任務(wù)就完成了。但是如果你是一個(gè) leader,那么你是對整個(gè)業(yè)務(wù)系統(tǒng)負(fù)責(zé),這個(gè)業(yè)務(wù)系統(tǒng)出了什么問題,都是你的責(zé)任。這個(gè)時(shí)候,你需要時(shí)刻關(guān)注這個(gè)系統(tǒng)是否正常運(yùn)行。

對于流量不是很大的系統(tǒng)來說,出現(xiàn)幾分鐘的故障可能造成不了多少損失。但是對于像淘寶、美團(tuán)、字節(jié)跳動(dòng)這樣的巨無霸來說,宕機(jī) 1 分鐘損失的金額可能就是幾百萬!

所以弄清楚此時(shí)此刻系統(tǒng)的運(yùn)行是否正常?各項(xiàng)業(yè)務(wù)指標(biāo)是否超過閾值?這些問題是每個(gè)經(jīng)驗(yàn)豐富的研發(fā)人員所需要關(guān)注的事情!

那么如何監(jiān)控你的系統(tǒng)?如何得知系統(tǒng)目前是正常還是異常?甚至如何預(yù)知未來一段時(shí)間系統(tǒng)可能出問題?Prometheus 正是這么一套數(shù)據(jù)監(jiān)控解決方案。它能讓你隨時(shí)掌控系統(tǒng)的運(yùn)行狀態(tài),快速定位出現(xiàn)問題的位置,快速排除故障。

只要按照 Prometheus 的方式來做,按部就班地學(xué)習(xí)和部署,我們就可以監(jiān)控機(jī)器的 CPU、內(nèi)存等資源的使用情況、Java 應(yīng)用的運(yùn)行情況以及業(yè)務(wù)各項(xiàng)指標(biāo)的實(shí)時(shí)數(shù)據(jù)。

當(dāng)然有一些公司會(huì)自己使用 Kafaka 收集監(jiān)控?cái)?shù)據(jù),并且存儲(chǔ)在 Hive 中,最終通過頁面聚合數(shù)據(jù),同樣能夠?qū)崿F(xiàn)數(shù)據(jù)監(jiān)控。但是這種解決方案需要開發(fā)人員掌握 Hive + Hadoop 等大數(shù)據(jù)框架,并且在前端展示上比較局限。

而通過 Prometheus 則可以直接部署使用,并且其與 Grafana 配套使用可以呈現(xiàn)出非常多樣化的圖表配置。對于中小規(guī)模的團(tuán)隊(duì)來說,可以極大地減少成本,加快研發(fā)速度。

而對于個(gè)人來講,掌握 Prometheus 可以增加你當(dāng) leader 的競爭力。 畢竟如果一個(gè)研發(fā)對自己的系統(tǒng)運(yùn)行狀況都不了解,那么他怎么做 leader,怎么帶領(lǐng)一個(gè)團(tuán)隊(duì)往前沖呢?

總結(jié)

對于工作多年的研發(fā)人員,對自己負(fù)責(zé)的系統(tǒng)必須了然于胸。而要做到了然于胸,單靠一味的自信是不夠的,必須借助一套功能強(qiáng)大的業(yè)務(wù)監(jiān)控系統(tǒng)。Prometheus 作為這其中的翹楚,憑借其完善的功能、海量數(shù)據(jù)支持,可以讓我們較低成本地實(shí)現(xiàn)業(yè)務(wù)監(jiān)控。

參考資料

Prometheus - Monitoring system & time series database

普羅米修斯 - 維基百科,自由的百科全書

本文轉(zhuǎn)載自微信公眾號「陳樹義」,可以通過以下二維碼關(guān)注。轉(zhuǎn)載本文請聯(lián)系陳樹義公眾號。

 

責(zé)任編輯:武曉燕 來源: 陳樹義
相關(guān)推薦

2021-02-18 15:36:13

PrometheusAlertmanageGrafana

2019-12-30 08:34:40

ZabbixPrometheus監(jiān)控

2022-11-28 09:58:58

C++開發(fā)

2021-03-26 10:04:38

數(shù)據(jù)結(jié)構(gòu)技術(shù)

2010-11-03 09:22:00

C語言

2021-09-29 07:22:09

監(jiān)控PrometheusZabbix

2021-02-01 08:02:11

設(shè)計(jì)模式接口

2020-05-11 09:00:57

Redis監(jiān)控Zabbix

2020-06-16 09:17:33

ESRedis監(jiān)控

2023-03-08 15:51:06

NixOS

2017-11-21 14:41:29

編程語言Python

2021-12-22 10:29:23

Prometheus elasticsear運(yùn)維

2021-03-31 08:02:34

Prometheus 監(jiān)控運(yùn)維

2021-08-27 07:06:10

應(yīng)用

2021-07-13 07:02:03

prometheus監(jiān)控遠(yuǎn)端服務(wù)

2013-03-12 14:30:09

Ubuntu操作系統(tǒng)

2015-08-06 10:14:15

造輪子facebook

2022-08-15 08:27:02

基站網(wǎng)絡(luò)

2025-06-03 00:00:06

性能優(yōu)化性能指標(biāo)響應(yīng)時(shí)間

2021-11-08 09:00:00

PrometheusKubernetes集群
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號