国产av一二三区|日本不卡动作网站|黄色天天久久影片|99草成人免费在线视频|AV三级片成人电影在线|成年人aV不卡免费播放|日韩无码成人一级片视频|人人看人人玩开心色AV|人妻系列在线观看|亚洲av无码一区二区三区在线播放

網(wǎng)易首頁 > 網(wǎng)易號 > 正文 申請入駐

案例實(shí)踐丨基于SkyWalking全鏈路監(jiān)控的微服務(wù)系統(tǒng)性能調(diào)優(yōu)實(shí)踐篇

0
分享至

1背景

隨著開源社區(qū)和云計(jì)算的快速推進(jìn),云原生微服務(wù)作為新型應(yīng)用系統(tǒng)的核心架構(gòu),得到了越來越廣泛的應(yīng)用。根據(jù)Gartner對微服務(wù)的定義:“微服務(wù)是范圍狹窄、封裝緊密、松散耦合、可獨(dú)立部署且可獨(dú)立伸縮的應(yīng)用程序組件!

微服務(wù)之父,馬丁.福勒,對微服務(wù)概述如下:就目前而言,對于微服務(wù)業(yè)界并沒有一個(gè)統(tǒng)一的、標(biāo)準(zhǔn)的定義。但通常而言,微服務(wù)架構(gòu)是一種架構(gòu)模式或者說是一種架構(gòu)風(fēng)格,它提倡將單一應(yīng)用程序劃分成一組小的服務(wù),每個(gè)服務(wù)運(yùn)行在自己獨(dú)立的進(jìn)程中,服務(wù)之間互相協(xié)調(diào)、互相配合,為用戶提供最終價(jià)值。服務(wù)之間采用輕量級的通信機(jī)制互相溝通(通常是基于HTTP的RESTful API)。

每個(gè)服務(wù)都圍繞著具體業(yè)務(wù)進(jìn)行構(gòu)建,并且能夠被獨(dú)立地部署到生產(chǎn)環(huán)境、類生產(chǎn)環(huán)境等,這種方法能夠提高應(yīng)用系統(tǒng)的響應(yīng)速度、靈活性和部署彈性,能夠按照業(yè)務(wù)發(fā)展與時(shí)俱進(jìn)快速迭代和優(yōu)化。目前行內(nèi)越來越多的應(yīng)用服務(wù)系統(tǒng)已升級改造為微服務(wù)架構(gòu),對現(xiàn)有應(yīng)用監(jiān)控體系提出了新的挑戰(zhàn)。

為推動(dòng)微服務(wù)應(yīng)用監(jiān)控體系的建設(shè)和發(fā)展,探索微服務(wù)全鏈路監(jiān)控技術(shù)在行內(nèi)的實(shí)踐路徑,我們重點(diǎn)引入了SkyWalking開源可觀測平臺,通過非代碼侵入的方式,采集微服務(wù)全鏈路監(jiān)控信息,以可視化的方式展現(xiàn)微服務(wù)系統(tǒng)的拓?fù)潢P(guān)系、追蹤交易鏈路、精準(zhǔn)識別性能瓶頸,彌補(bǔ)現(xiàn)有測試工具和方法對微服務(wù)全鏈路應(yīng)用監(jiān)控的缺失。

2 SkyWalking簡介

SkyWalking是開源的可觀測平臺的APM系統(tǒng),專為微服務(wù),云原生架構(gòu)和基于容器(Docker,k8s,Mesos等)的架構(gòu)設(shè)計(jì)的應(yīng)用程序性能監(jiān)控工具,用于收集、分析、聚合和可視化來自服務(wù)和云原生基礎(chǔ)設(shè)施的數(shù)據(jù)。提供分布式追蹤、服務(wù)網(wǎng)格遙測分析、度量聚合和可視化一體化解決方案。SkyWalking主要由以下四大部分構(gòu)成:

Agent代理程序

探針收集數(shù)據(jù)并根據(jù)SkyWalking的要求對數(shù)據(jù)進(jìn)行重新格式化(不同的探測器支持不同的來源);Agent運(yùn)行在各個(gè)服務(wù)實(shí)例中,負(fù)責(zé)采集服務(wù)實(shí)例的Trace、Metrics等數(shù)據(jù),然后通過gRPC方式上報(bào)給SkyWalking后端,供OAP服務(wù)器進(jìn)行分析,本文將在第3章詳細(xì)介紹Agent代理程序。

OAP服務(wù)器

SkyWalking的OAP(Observability Analysis Platform,觀測分析平臺)是一個(gè)用于分析鏈路采樣數(shù)據(jù)的分析計(jì)算系統(tǒng)。

在OAP服務(wù)主要需要計(jì)算以下三類數(shù)據(jù):

(1)Record數(shù)據(jù)

記錄的鏈路數(shù)據(jù),如Trace、訪問日志等數(shù)據(jù),由RecordStreamProcessor進(jìn)行處理。

(2)Metrics數(shù)據(jù)

記錄的指標(biāo)數(shù)據(jù),絕大部分的OAL(Observability Analysis Language)指標(biāo)都將生成這類數(shù)據(jù),由MetricsStreamProcessor進(jìn)行處理。

(3)TopN數(shù)據(jù)

記錄的周期性的采樣數(shù)據(jù),如慢SQL的周期性采集,由TopNStreamProcessor進(jìn)行處理。

Trace、訪問日志等這類的明細(xì)數(shù)據(jù),數(shù)據(jù)量比較大,但不需要?dú)w并處理,所以在OAP節(jié)點(diǎn)內(nèi)部即可處理完成,這些明細(xì)數(shù)據(jù)采用緩存、異步批量處理和流式寫入的方式將它們寫入到外部存儲(chǔ)器(Storage)中。

絕大部分由OAL(Observability Analysis Language)定義的指標(biāo)數(shù)據(jù)是需要微服務(wù)聚合計(jì)算的,所以在OAP集群計(jì)算流中將其分為了兩個(gè)步驟。

步驟一,接收和解析Agent代理程序發(fā)送的數(shù)據(jù),并執(zhí)行當(dāng)前OAP服務(wù)節(jié)點(diǎn)內(nèi)的數(shù)據(jù)聚合,使用OAL或其他聚合模式。對于不需要聚合的數(shù)據(jù),直接將其寫入到外部存儲(chǔ)器(Storage)中;如果是需要微服務(wù)聚合的數(shù)據(jù),根據(jù)一定的路由規(guī)則發(fā)送給指定的OAP服務(wù)節(jié)點(diǎn)。

步驟二,接收和解析經(jīng)步驟一處理的數(shù)據(jù),之后進(jìn)行二次聚合計(jì)算,并將結(jié)果數(shù)據(jù)寫入到外部存儲(chǔ)器(Storage)中。

針對以上兩個(gè)步驟,OAP服務(wù)節(jié)點(diǎn)被分為Receiver(處理步驟一)和Aggregator(處理步驟二)兩種角色。

默認(rèn)情況下,所有OAP服務(wù)節(jié)點(diǎn)均為Mixed混合角色,其既可以執(zhí)行步驟一的操作,也可以執(zhí)行步驟二的操作。在大規(guī)模系統(tǒng)部署SkyWalking的場景下,可根據(jù)網(wǎng)絡(luò)流量進(jìn)行角色分離的兩級部署。

OAP服務(wù)器還服務(wù)響應(yīng)SkyWalking UI界面發(fā)送來的查詢請求,將前面持久化的數(shù)據(jù)查詢出來,組成正確的響應(yīng)結(jié)果返回給UI界面進(jìn)行展示。

Storage數(shù)據(jù)庫存儲(chǔ)

作為OAP服務(wù)的外部存儲(chǔ)設(shè)備,負(fù)責(zé)數(shù)據(jù)的存儲(chǔ),支持多種存儲(chǔ)類型,可以使用既有的存儲(chǔ)系統(tǒng),如ElasticSearch,Mysql等,也可以自定義實(shí)現(xiàn)存儲(chǔ)系統(tǒng)。SkyWalking數(shù)據(jù)可以選擇存儲(chǔ)在已實(shí)現(xiàn)的ElasticSearch,Mysql,TiDB,InfluxDB,H2的持久化系統(tǒng),其中H2是內(nèi)存數(shù)據(jù)庫,存儲(chǔ)的數(shù)據(jù)在內(nèi)存里,不落到磁盤上,重啟SkyWalking服務(wù)會(huì)導(dǎo)致數(shù)據(jù)丟失,是默認(rèn)的存儲(chǔ)方式,一般線上使用ElasticSearch集群作為其后端存儲(chǔ)。

UI界面

負(fù)責(zé)可視化和管理SkyWalking數(shù)據(jù),前后端分離,該UI界面負(fù)責(zé)將用戶的查詢操作封裝為GraphQL請求提交給OAP后端觸發(fā)后續(xù)的查詢操作,待拿到查詢結(jié)果之后會(huì)在前端負(fù)責(zé)展示并可以查看鏈路調(diào)用關(guān)系,查看各種監(jiān)控指標(biāo),性能指標(biāo)等等。

由以上對構(gòu)成SkyWalking的各分系統(tǒng)的介紹可知,Agent代理程序負(fù)責(zé)收集各種鏈路采樣數(shù)據(jù),通過GRPC的?式傳遞給OAP進(jìn)行分析并且存儲(chǔ)到數(shù)據(jù)庫中,最終通過UI界面將分析的統(tǒng)計(jì)報(bào)表、服務(wù)依賴、拓?fù)潢P(guān)系圖展示出來。

3 SkyWalking應(yīng)用擴(kuò)展及性能調(diào)優(yōu)

自定義插件開發(fā)示例,基于某系統(tǒng)開發(fā)自定義插件,將其部署至SkyWalking部署包的plugins目錄內(nèi)。

對某查詢接口執(zhí)行調(diào)用操作,多個(gè)線程都可以在SkyWalking中查看方法的采樣信息,如圖1所示:

圖1某查詢方法的采樣信息

點(diǎn)擊圖1中的某查詢方法鏈接,可以查看詳細(xì)的跨度信息,如圖2所示。

圖2跨度信息

由以上信息可知,可以清晰看到我們添加的三個(gè)tag標(biāo)簽分別為:invoke開始時(shí)間,invoke結(jié)束時(shí)間,系統(tǒng)間查詢方法執(zhí)行時(shí)長(ms)。

系統(tǒng)重構(gòu),架構(gòu)特點(diǎn)為多微服務(wù)、多鏈路系統(tǒng)?蓱(yīng)用參數(shù)配置檢查、可觀測性技術(shù)、數(shù)據(jù)移植、同步驗(yàn)證4個(gè)課題的成果。

性能調(diào)優(yōu)示例,為了盡可能減少SkyWaling Agent對業(yè)務(wù)性能測試的影響,真實(shí)監(jiān)控出業(yè)務(wù)系統(tǒng)性能瓶頸,我們對SkywalkingAgent進(jìn)行了一些性能調(diào)優(yōu),通過調(diào)整采樣頻率和采樣數(shù)量等相關(guān)參數(shù),減少部署SkyWalking Agent后產(chǎn)生的額外的性能損耗。圖3是通過對同一只交易在未部署SkyWaling Agent情況下、已部署SkyWaling Agent標(biāo)準(zhǔn)化(未性能調(diào)優(yōu))情況下、已部署SkyWaling Agent已性能調(diào)優(yōu)情況下,在相同并發(fā)下的性能測試結(jié)果對比,調(diào)優(yōu)之后,我們發(fā)現(xiàn)性能表現(xiàn)相對于標(biāo)準(zhǔn)化部署場景下有提升,相較未部署agent情況,將性能損耗降到最小。

入群學(xué)習(xí)交流↓↓↓↓↓↓

特別聲明:以上內(nèi)容(如有圖片或視頻亦包括在內(nèi))為自媒體平臺“網(wǎng)易號”用戶上傳并發(fā)布,本平臺僅提供信息存儲(chǔ)服務(wù)。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相關(guān)推薦
熱點(diǎn)推薦
騎士滅猛龍總分1-0:米切爾32分創(chuàng)歷史第一 哈登22+10總分超伯德

騎士滅猛龍總分1-0:米切爾32分創(chuàng)歷史第一 哈登22+10總分超伯德

醉臥浮生
2026-04-19 05:47:13
殺人誅心!向太談買房,句句不提馬筱梅,卻字字都戳她“痛處”

殺人誅心!向太談買房,句句不提馬筱梅,卻字字都戳她“痛處”

杰絲聊古今
2026-04-17 11:53:49
扎心!一季度觀影人次銳減6700萬,票房腰斬,網(wǎng)友:電影真的難看

扎心!一季度觀影人次銳減6700萬,票房腰斬,網(wǎng)友:電影真的難看

火山詩話
2026-04-17 14:17:56
皇馬四大皆空 今夏醞釀大清洗計(jì)劃 8大悍將在列 兩大巨星難以取舍

皇馬四大皆空 今夏醞釀大清洗計(jì)劃 8大悍將在列 兩大巨星難以取舍

零度眼看球
2026-04-19 07:28:07
伊朗總統(tǒng)當(dāng)眾警告“下一個(gè)是中國”,讓中國別忘了唇亡齒寒?

伊朗總統(tǒng)當(dāng)眾警告“下一個(gè)是中國”,讓中國別忘了唇亡齒寒?

通鑒史智
2026-04-19 09:36:00
下一波暴雨,馬上到廣東!還有11級大風(fēng)

下一波暴雨,馬上到廣東!還有11級大風(fēng)

魯中晨報(bào)
2026-04-19 07:20:03
10級風(fēng)!天津發(fā)布陸地大風(fēng)黃色預(yù)警

10級風(fēng)!天津發(fā)布陸地大風(fēng)黃色預(yù)警

界面新聞
2026-04-18 18:41:57
現(xiàn)場畫面曝光,中方跟監(jiān)日本軍艦過航臺海,無人機(jī)視角記錄一切

現(xiàn)場畫面曝光,中方跟監(jiān)日本軍艦過航臺海,無人機(jī)視角記錄一切

三叔的裝備空間
2026-04-18 22:26:06
調(diào)查發(fā)現(xiàn):每天吃一根香蕉,就等于給血脂添負(fù)擔(dān)?答案來了

調(diào)查發(fā)現(xiàn):每天吃一根香蕉,就等于給血脂添負(fù)擔(dān)?答案來了

荷蘭豆愛健康
2026-04-19 07:36:39
越南興安一中國男子,與摩托車發(fā)生交通摩擦,竟掏出手槍直接開火,這下事搞大了

越南興安一中國男子,與摩托車發(fā)生交通摩擦,竟掏出手槍直接開火,這下事搞大了

越南語學(xué)習(xí)平臺
2026-04-19 09:45:17
“二號人物”已交代!民進(jìn)黨栽贓甩鍋,鄭麗文發(fā)出怒吼:跟他拼了

“二號人物”已交代!民進(jìn)黨栽贓甩鍋,鄭麗文發(fā)出怒吼:跟他拼了

米果說識
2026-04-18 16:56:33
拼多多回應(yīng)被處罰:誠懇接受,堅(jiān)決服從

拼多多回應(yīng)被處罰:誠懇接受,堅(jiān)決服從

界面新聞
2026-04-17 21:56:26
曼城VS阿森納:爭冠生死戰(zhàn)瓜帥不整活 4231出擊 謝爾基哈蘭德出擊

曼城VS阿森納:爭冠生死戰(zhàn)瓜帥不整活 4231出擊 謝爾基哈蘭德出擊

零度眼看球
2026-04-19 06:48:10
65年李宗仁回國,毛主席問他想要個(gè)什么官,李直言:人大副委員長

65年李宗仁回國,毛主席問他想要個(gè)什么官,李直言:人大副委員長

歷史龍?jiān)w
2026-04-17 06:00:15
徐帆回應(yīng)離婚5個(gè)月,馮小剛近況曝光,他的“小心思”再藏不住了

徐帆回應(yīng)離婚5個(gè)月,馮小剛近況曝光,他的“小心思”再藏不住了

東方不敗然多多
2026-04-19 02:04:35
港獨(dú)、罵中國人,如今卻還想來內(nèi)地?fù)平,這3位香港明星令人作嘔

港獨(dú)、罵中國人,如今卻還想來內(nèi)地?fù)平,這3位香港明星令人作嘔

驕陽之夏明
2026-04-15 16:44:42
梅西目前在全球范圍內(nèi)擁有一張令人驚嘆的俱樂部版圖!!

梅西目前在全球范圍內(nèi)擁有一張令人驚嘆的俱樂部版圖!

足球大叔1986
2026-04-19 06:31:48
斷油倒計(jì)時(shí)!高市早苗被逼瘋?日本為活命,連二戰(zhàn)老招都翻出來了

斷油倒計(jì)時(shí)!高市早苗被逼瘋?日本為活命,連二戰(zhàn)老招都翻出來了

浪子阿邴聊體育
2026-04-18 08:09:11
江西“射里頭”火了!全國奇葩地名大賞

江西“射里頭”火了!全國奇葩地名大賞

深度報(bào)
2026-04-18 21:53:14
廣東一餐廳被查!愛吃腸粉、河粉、米粉、瀨粉、粿條的人,特別注意

廣東一餐廳被查!愛吃腸粉、河粉、米粉、瀨粉、粿條的人,特別注意

番禺臺
2026-04-18 19:37:39
2026-04-19 10:19:00
51Testing軟件測試網(wǎng) incentive-icons
51Testing軟件測試網(wǎng)
中國軟件測試人的精神家園
1558文章數(shù) 13260關(guān)注度
往期回顧 全部

科技要聞

50分26秒!榮耀獲得人形機(jī)器人半馬冠軍

頭條要聞

牛彈琴:伊朗遭到特朗普"羞辱"被激怒 結(jié)果印度遭了殃

頭條要聞

牛彈琴:伊朗遭到特朗普"羞辱"被激怒 結(jié)果印度遭了殃

體育要聞

時(shí)隔25年重返英超!沒有人再嘲笑他了

娛樂要聞

劉德華回應(yīng)潘宏彬去世,拒談喪禮細(xì)節(jié)

財(cái)經(jīng)要聞

華誼兄弟,8年虧光85億

汽車要聞

奇瑞威麟R08 PRO正式上市 售價(jià)14.48萬元起

態(tài)度原創(chuàng)

房產(chǎn)
健康
藝術(shù)
數(shù)碼
家居

房產(chǎn)要聞

官宣簽約最強(qiáng)城更!?跇鞘校蝗粴⑷肷衩胤科!

干細(xì)胞抗衰4大誤區(qū),90%的人都中招

藝術(shù)要聞

鄭麗文大陸之行引發(fā)熱議,孫中山贈(zèng)對聯(lián)成焦點(diǎn)!

數(shù)碼要聞

蘋果2026款Mac Studio前瞻:M5 Max/Ultra芯片,內(nèi)存最高256G

家居要聞

法式線條 時(shí)光靜淌

無障礙瀏覽 進(jìn)入關(guān)懷版