www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁 > > 架構(gòu)師社區(qū)
[導(dǎo)讀]全鏈路壓測作為線上服務(wù)穩(wěn)定性保障的重要手段,對高德來說也是非常重要的。高德全鏈路壓測平臺TestPG從無到有,在經(jīng)歷過常態(tài)化壓測后,已基本可以保障高德的所有全鏈路壓測和日常壓測,達(dá)到了平臺初期快速、準(zhǔn)確壓測和全鏈路壓測的目標(biāo)。而語料生產(chǎn)(流量處理)作為全鏈路壓測的重要環(huán)節(jié),本文將對此做重點介紹。

背景

高德地圖作為日活過億的國民級出行生活服務(wù)平臺,承載著海量用戶服務(wù)的是后臺的超大規(guī)模集群。從用戶角度,如果出問題,影響會很大。3機(jī)房異地部署造成線上環(huán)境復(fù)雜,鏈路復(fù)雜。在這樣的條件下,如何避免因故障造成用戶的傷害,以及在復(fù)雜鏈路條件下做好容量規(guī)劃,做好災(zāi)備,并在第一時間發(fā)現(xiàn)問題,通過流量控制和預(yù)案演練做應(yīng)急響應(yīng)就顯得至關(guān)重要,而所有的工作都不能等到事情發(fā)生之后才做,我們需要有一種驗證手段來做好提前性能摸底,這就是全鏈路壓測,讓真實的流量提前到來。


全鏈路壓測作為線上服務(wù)穩(wěn)定性保障的重要手段,對高德來說也是非常重要的。高德全鏈路壓測平臺TestPG從無到有,在經(jīng)歷過常態(tài)化壓測后,已基本可以保障高德的所有全鏈路壓測和日常壓測,達(dá)到了平臺初期快速、準(zhǔn)確壓測和全鏈路壓測的目標(biāo)。而語料生產(chǎn)(流量處理)作為全鏈路壓測的重要環(huán)節(jié),本文將對此做重點介紹。


一次全鏈路壓測可簡單總結(jié)為3步:壓測前的流量處理(也就是生產(chǎn)語料)、壓測中確定壓力模型啟動壓測、壓測后的結(jié)果分析與問題定位。每次全鏈路壓測,壓測前的流量處理是整個壓測過程中最耗時的一環(huán)。過去往往由運(yùn)維采集日志交給測試同學(xué)寫腳本處理,耗時相當(dāng)嚴(yán)重、成本巨大,且存在請求過期等諸多問題?;谶@些問題,高德全鏈路壓測平臺TestPG前期已規(guī)范了高德壓測的語料格式,統(tǒng)一了高德壓測的流量處理流程。但隨著高德全鏈路壓測的演進(jìn),后續(xù)面臨兩個主要問題:


  • 語料生產(chǎn)流程缺乏統(tǒng)一管控。雖然平臺前期已規(guī)范了語料格式,但各業(yè)務(wù)只是按照語料規(guī)范處理流量,生產(chǎn)流程缺乏統(tǒng)一、標(biāo)準(zhǔn)化管控,導(dǎo)致語料生產(chǎn)成本依然很大。尤其對于全鏈路壓測來說,語料準(zhǔn)備是最耗時的環(huán)節(jié)。


  • 接口級別的精準(zhǔn)控壓無法滿足需求。高德作為國民級的出行應(yīng)用,流量受天氣、地形、節(jié)假日的影響比較大。比如拿駕車導(dǎo)航來說,日常大多都是短距離的駕車導(dǎo)航,而國慶、春節(jié)大多都是長距離的駕車導(dǎo)航,而長距離的駕車導(dǎo)航對后端算力的要求是非線性增加的,甚至是成倍增加。但長短距離的駕車導(dǎo)航對壓測平臺來說是同一個接口,而平臺目前的精準(zhǔn)控壓只能做到接口級別,無法模擬接口特征級別的壓測。


基于以上兩大問題,高德全鏈路壓測團(tuán)隊設(shè)立語料智能化專項,重點解決以上相關(guān)問題。


解題思路和路徑

引流標(biāo)準(zhǔn)化

高德的全鏈路壓測彼時已基本拉通大多業(yè)務(wù),但還屬于一個演進(jìn)階段。對于語料處理,主要由各業(yè)務(wù)自行處理后用來壓測,語料處理的來源缺乏統(tǒng)一性,日志、ODPS、流量等處理來源司空見慣。對于語料生產(chǎn)流程的統(tǒng)一管控,我們首先想到的是統(tǒng)一語料處理來源,必須選擇一個低成本、高效率的方式作為語料生產(chǎn)的輸入,而流量錄制的方式就很切合。經(jīng)過調(diào)研,發(fā)現(xiàn)高德其他業(yè)務(wù)場景對流量錄制也有很大的需求。但高德過去的流量錄制方式并不統(tǒng)一,各業(yè)務(wù)線自行拷貝流量經(jīng)常會引起線上機(jī)器不穩(wěn)定等問題。所以首先要做的是統(tǒng)一高德的流量錄制,標(biāo)準(zhǔn)化引流。


語料生產(chǎn)平臺化

要統(tǒng)一管控語料的生產(chǎn)流程,上面已經(jīng)統(tǒng)一了語料生產(chǎn)的輸入,接下來就是如何把流量轉(zhuǎn)化為符合平臺規(guī)范的語料,把整個轉(zhuǎn)化流程平臺化。但對于高德業(yè)務(wù)來說,各個業(yè)務(wù)都有其自身的特點,如果讓平臺為每個業(yè)務(wù)提供定制化的處理邏輯成本巨大,再加上平臺對各個業(yè)務(wù)并不是特別熟悉,也很容易出錯。而整個語料處理過程也存在一些通用的處理邏輯,所以我們必須提供一種既支持各業(yè)務(wù)定制化需求,又可以滿足平臺通用處理邏輯的方案。我們最終選擇通過Flink來完成整個流量處理邏輯。


引流已經(jīng)標(biāo)準(zhǔn)化,業(yè)務(wù)方只需查看流量的格式內(nèi)容,編寫Flink的UDF(用戶自定義函數(shù)),處理自身業(yè)務(wù)定制化的需求即可,而后續(xù)通用的語料存儲等邏輯可通過Flink的sink插件來完成。這樣既可以提供通用處理邏輯,又給業(yè)務(wù)的特殊需求提供了支持,擴(kuò)展性良好。


語料智能化

上面已經(jīng)提到高德這種國民級出行應(yīng)用受各種環(huán)境影響比較大,如何達(dá)到接口特征級別的精準(zhǔn)控壓,是當(dāng)時面臨的又一大難題。平臺已具備接口級別的精準(zhǔn)控壓,只需把接口按照特征分類,提供真實流量的特征分布即可。但流量的特征分布是實時變化的,如何提供符合流量高峰的特征分布是語料智能化的最終目標(biāo)。


要實現(xiàn)語料智能化需要經(jīng)歷3個階段。第一階段是流量特征統(tǒng)計。我們需要明確影響流量變化的因素,體現(xiàn)到流量上就是具體的參數(shù)分布,具體有哪些參數(shù)會隨著外界環(huán)境的變化而變化。當(dāng)然這塊高德大多業(yè)務(wù)線都有一些粗略的分析結(jié)果,前期可以直接采用,后期就需要有更細(xì)粒度的特征分析。


第二階段是流量特征提取。有了具體的特征參數(shù)后,就需要對特征參數(shù)進(jìn)行提取統(tǒng)計,后續(xù)可用來做智能預(yù)測。但特征參數(shù)的提取到底應(yīng)該如何去做呢?經(jīng)過綜合分析發(fā)現(xiàn)放到語料生產(chǎn)的環(huán)節(jié)最合適。引流拷貝流量,語料生產(chǎn)環(huán)節(jié)用來處理流量,在這個環(huán)節(jié)提取特征參數(shù)再好不過了。而整個語料生產(chǎn)擴(kuò)展性良好,對用戶的特殊需求通過UDF完成,整個流量特征提取剛好可以在通用邏輯里面完成。


第三階段就是智能預(yù)測與機(jī)器學(xué)習(xí)。有了特征參數(shù)的統(tǒng)計數(shù)據(jù),就可以借助往年高德地圖國慶或春節(jié)的流量特征,加上今年隨著業(yè)務(wù)的流量變化趨勢,智能預(yù)測出符合今年國慶或春節(jié)流量特征的數(shù)據(jù),做到接口特征級別的精準(zhǔn)壓測,做到真正意義上的全鏈路壓測,為高德地圖服務(wù)的穩(wěn)定性保駕護(hù)航。后續(xù)也可以借助機(jī)器學(xué)習(xí)自動發(fā)現(xiàn)影響流量變化的特征參數(shù),自動采集分析,做到真正意義的語料智能化。


整體方案

高德全鏈路壓測:語料智能化演進(jìn)之路

整個引流工作將由開發(fā)的統(tǒng)一引流平臺來完成,引流平臺通過引流插件把流量緩存到Kfaka,最終落盤到ODPS。而整個語料生產(chǎn)服務(wù)直接對接引流平臺,處理來自O(shè)DPS的流量即可。


語料生產(chǎn)服務(wù)的整體處理過程都由Flink來完成。用戶只需編寫Flink的UDF來完成自己業(yè)務(wù)線定制化的需求即可。而且整個Flink的UDF支持多參數(shù)傳遞,用戶可靈活編寫UDF,在執(zhí)行過程中動態(tài)傳遞相關(guān)參數(shù),解決請求過期等問題。


Flink sink是由平臺開發(fā)的一個Flink源表解析插件,主要包括流量的特征分析與提取,以及把生產(chǎn)好的語料按照接口命名寫入OSS供平臺壓測使用。目前流量的特征由各業(yè)務(wù)線自己提供,通過在平臺添加完成。Flink sink在執(zhí)行過程中調(diào)用平臺開放API獲取特征數(shù)據(jù)進(jìn)行采集,最終上報給平臺,平臺后續(xù)再根據(jù)這些數(shù)據(jù)進(jìn)行機(jī)器學(xué)習(xí),智能預(yù)測出符合流量高峰的流量特征,供全鏈路壓測使用。


核心功能介紹

Iflow引流平臺

基于上面的問題分析,高德工程效率團(tuán)隊積極迎接挑戰(zhàn),短短幾個月開發(fā)了Iflow引流平臺,對高德的引流進(jìn)行了統(tǒng)一管控,具體如下圖所示:

高德全鏈路壓測:語料智能化演進(jìn)之路

Iflow引流平臺以任務(wù)的方式對高德的引流進(jìn)行管理。目前采用引流插件的方式進(jìn)行流量拷貝(后續(xù)將支持更多引流方式),流量通過Kafka緩存,最終寫入ODPS供大家使用。用戶只需要從ODPS提取需要的數(shù)據(jù)即可。而啟動引流需要相關(guān)負(fù)責(zé)人審批,周知到關(guān)聯(lián)業(yè)務(wù),有效的降低了引流引起事故后排查的成本。


TestPG語料智能化

高德全鏈路壓測平臺語料智能化主要由3個模塊組成:業(yè)務(wù)線管理、壓測名單管理和接口比例管理。業(yè)務(wù)線管理主要用來管理高德各個鏈路的相關(guān)數(shù)據(jù),包括關(guān)聯(lián)引流任務(wù)、啟動引流、引流記錄、語料路徑、壓測header管理和觸發(fā)語料生產(chǎn)等功能。一條業(yè)務(wù)線就是一條壓測鏈路,從引流到語料生產(chǎn)以及語料特征分析等都是在業(yè)務(wù)線維度完成的。具體如下圖所示:

高德全鏈路壓測:語料智能化演進(jìn)之路


功能介紹:


  • 關(guān)聯(lián)引流任務(wù):主要完成和引流平臺任務(wù)的關(guān)聯(lián)以及配置相關(guān)的參數(shù)。


  • 啟動引流任務(wù):啟動引流平臺任務(wù),在引流結(jié)束后會自動觸發(fā)語料生產(chǎn),通過執(zhí)行用戶編寫的Flink UDF和平臺開發(fā)的Flink插件,完成語料的生產(chǎn)和特征參數(shù)的提取。


  • 語料路徑:在每次啟動引流觸發(fā)語料生產(chǎn)后平臺會自動生成語料路徑,用戶可在創(chuàng)建語料的時候自主選擇。


  • 壓測header管理:每條業(yè)務(wù)線都有自身的業(yè)務(wù)特點,在header上的體現(xiàn)也不同,這里主要用來管理壓測http服務(wù)發(fā)送的header內(nèi)容。


  • 觸發(fā)語料生產(chǎn):語料生產(chǎn)有2條途徑,一是關(guān)聯(lián)好引流任務(wù)啟動引流后會自動觸發(fā)語料生產(chǎn),包括特征參數(shù)提取等一系列的操作;二是在引流成功后,用戶可能對UDF等參數(shù)有所修改,也可以通過此按鈕來觸發(fā)語料生產(chǎn)。


壓測名單管理主要用來管理壓測的接口。一個公司開始做壓測,業(yè)務(wù)肯定是需要跟著去適配的,隨之而來的就是業(yè)務(wù)改造,這是一個漫長的過程。為了方便管理,高德全鏈路壓測平臺對高德這邊的接口進(jìn)行統(tǒng)一管理。具體如下圖所示:

高德全鏈路壓測:語料智能化演進(jìn)之路

壓測名單是在引流過程中自動上報的,引流只要發(fā)現(xiàn)未在壓測名單的接口就會自動上報壓測平臺,平臺根據(jù)關(guān)聯(lián)應(yīng)用去關(guān)聯(lián)對應(yīng)的負(fù)責(zé)人,并推動確認(rèn)。如果可壓測就確認(rèn)為壓測名單,下次語料生產(chǎn)作為白名單正常引流。如果不能壓測就區(qū)分為免壓接口或待跟進(jìn)接口。待跟進(jìn)接口平臺后續(xù)會以消息通知的形式推動業(yè)務(wù)線改造,最終達(dá)到真正意義的接口覆蓋全、鏈路覆蓋全的全鏈路壓測。


接口比例管理前期主要是用來管理BI提供的、以及每次全鏈路壓測調(diào)整的比較貼近真實情況的接口比例數(shù)據(jù),作為后續(xù)全鏈路壓測的一個參考。后期將通過語料生產(chǎn)提取流量特征的統(tǒng)計數(shù)據(jù),智能分析預(yù)測出符合真實情況的流量比例,供全鏈路壓測直接使用,具體如下圖所示:

高德全鏈路壓測:語料智能化演進(jìn)之路


平臺優(yōu)勢

語料平臺化生產(chǎn)

整個語料生產(chǎn)對接了引流平臺,并通過Flink來完成。既支持了業(yè)務(wù)方定制化的需求,也支持平臺通用化的處理邏輯,擴(kuò)展性良好。通用邏輯通過Flink sink來實現(xiàn),并加入了流量特征提取等功能,推動了語料智能化的順利進(jìn)行。用戶只需要學(xué)習(xí)Flink完成UDF的編寫,然后在平臺完成相關(guān)配置即可。很大程度上提高了語料生產(chǎn)的效率和質(zhì)量,是語料從格式標(biāo)準(zhǔn)化向生產(chǎn)流程標(biāo)準(zhǔn)化的一大飛躍。


語料智能化

平臺在整個語料生產(chǎn)的過程中,通過Flink插件完成了特征參數(shù)的統(tǒng)計匯總。目前用戶只需在平臺完成相關(guān)特征的配置,平臺在語料生產(chǎn)過程中就會分析特征并統(tǒng)計匯總。有了特征參數(shù)的統(tǒng)計數(shù)據(jù),將有助于平臺后續(xù)的智能分析與預(yù)測,達(dá)到接口特征級別的精準(zhǔn)控壓,最終達(dá)到完全意義的全鏈路壓測。


平臺目前已經(jīng)完成了語料的自動生產(chǎn),并加入了語料智能化相關(guān)的工作。整個壓測名單也是通過引流自動上報,后續(xù)將通過消息通知自動拉通業(yè)務(wù)線改造解決。接口比例管理模塊也已支持接口比例的展示和調(diào)整,最終通過語料特征的智能預(yù)測,即可生產(chǎn)出符合流量高峰真實特征的語料。這些都將推動高德全鏈路壓測智能化的演進(jìn)。


未來展望

高德全鏈路壓測平臺語料智能化發(fā)展已經(jīng)有一段時間了,通過大家的不懈努力,語料智能化已完成了語料的自動生產(chǎn),以及特征參數(shù)的匯總和提取,為后續(xù)智能化奠定了基礎(chǔ)。未來平臺將通過機(jī)器學(xué)習(xí)的方式分析學(xué)習(xí)采集到的特征數(shù)據(jù),根據(jù)往年流量高峰的特征情況,加今年流量的變化趨勢預(yù)測出符合今年流量高峰的特征情況,做到接口特征級別的精準(zhǔn)控壓,完全模擬真實流量壓測達(dá)到真正意義的全鏈路壓測。


此外,平臺將會借助機(jī)器學(xué)習(xí)自動分析發(fā)現(xiàn)影響流量變化的參數(shù),自動提取分析,提高語料生產(chǎn)的準(zhǔn)確性。


平臺也會有置信度評估系統(tǒng),分別對比真實的流量特征和預(yù)測的流量特征,分析產(chǎn)生誤差的原因,進(jìn)一步提高預(yù)測的精準(zhǔn)度,做到完全真實的流量生產(chǎn)。后續(xù)配合平臺的精準(zhǔn)壓測、壓力模型和監(jiān)控等功能達(dá)到真正意義的無人化、智能化的全鏈路壓測。

特別推薦一個分享架構(gòu)+算法的優(yōu)質(zhì)內(nèi)容,還沒關(guān)注的小伙伴,可以長按關(guān)注一下:

高德全鏈路壓測:語料智能化演進(jìn)之路

高德全鏈路壓測:語料智能化演進(jìn)之路

高德全鏈路壓測:語料智能化演進(jìn)之路

長按訂閱更多精彩▼

高德全鏈路壓測:語料智能化演進(jìn)之路

如有收獲,點個在看,誠摯感謝

免責(zé)聲明:本文內(nèi)容由21ic獲得授權(quán)后發(fā)布,版權(quán)歸原作者所有,本平臺僅提供信息存儲服務(wù)。文章僅代表作者個人觀點,不代表本平臺立場,如有問題,請聯(lián)系我們,謝謝!

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

LED驅(qū)動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: 驅(qū)動電源

在工業(yè)自動化蓬勃發(fā)展的當(dāng)下,工業(yè)電機(jī)作為核心動力設(shè)備,其驅(qū)動電源的性能直接關(guān)系到整個系統(tǒng)的穩(wěn)定性和可靠性。其中,反電動勢抑制與過流保護(hù)是驅(qū)動電源設(shè)計中至關(guān)重要的兩個環(huán)節(jié),集成化方案的設(shè)計成為提升電機(jī)驅(qū)動性能的關(guān)鍵。

關(guān)鍵字: 工業(yè)電機(jī) 驅(qū)動電源

LED 驅(qū)動電源作為 LED 照明系統(tǒng)的 “心臟”,其穩(wěn)定性直接決定了整個照明設(shè)備的使用壽命。然而,在實際應(yīng)用中,LED 驅(qū)動電源易損壞的問題卻十分常見,不僅增加了維護(hù)成本,還影響了用戶體驗。要解決這一問題,需從設(shè)計、生...

關(guān)鍵字: 驅(qū)動電源 照明系統(tǒng) 散熱

根據(jù)LED驅(qū)動電源的公式,電感內(nèi)電流波動大小和電感值成反比,輸出紋波和輸出電容值成反比。所以加大電感值和輸出電容值可以減小紋波。

關(guān)鍵字: LED 設(shè)計 驅(qū)動電源

電動汽車(EV)作為新能源汽車的重要代表,正逐漸成為全球汽車產(chǎn)業(yè)的重要發(fā)展方向。電動汽車的核心技術(shù)之一是電機(jī)驅(qū)動控制系統(tǒng),而絕緣柵雙極型晶體管(IGBT)作為電機(jī)驅(qū)動系統(tǒng)中的關(guān)鍵元件,其性能直接影響到電動汽車的動力性能和...

關(guān)鍵字: 電動汽車 新能源 驅(qū)動電源

在現(xiàn)代城市建設(shè)中,街道及停車場照明作為基礎(chǔ)設(shè)施的重要組成部分,其質(zhì)量和效率直接關(guān)系到城市的公共安全、居民生活質(zhì)量和能源利用效率。隨著科技的進(jìn)步,高亮度白光發(fā)光二極管(LED)因其獨(dú)特的優(yōu)勢逐漸取代傳統(tǒng)光源,成為大功率區(qū)域...

關(guān)鍵字: 發(fā)光二極管 驅(qū)動電源 LED

LED通用照明設(shè)計工程師會遇到許多挑戰(zhàn),如功率密度、功率因數(shù)校正(PFC)、空間受限和可靠性等。

關(guān)鍵字: LED 驅(qū)動電源 功率因數(shù)校正

在LED照明技術(shù)日益普及的今天,LED驅(qū)動電源的電磁干擾(EMI)問題成為了一個不可忽視的挑戰(zhàn)。電磁干擾不僅會影響LED燈具的正常工作,還可能對周圍電子設(shè)備造成不利影響,甚至引發(fā)系統(tǒng)故障。因此,采取有效的硬件措施來解決L...

關(guān)鍵字: LED照明技術(shù) 電磁干擾 驅(qū)動電源

開關(guān)電源具有效率高的特性,而且開關(guān)電源的變壓器體積比串聯(lián)穩(wěn)壓型電源的要小得多,電源電路比較整潔,整機(jī)重量也有所下降,所以,現(xiàn)在的LED驅(qū)動電源

關(guān)鍵字: LED 驅(qū)動電源 開關(guān)電源

LED驅(qū)動電源是把電源供應(yīng)轉(zhuǎn)換為特定的電壓電流以驅(qū)動LED發(fā)光的電壓轉(zhuǎn)換器,通常情況下:LED驅(qū)動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: LED 隧道燈 驅(qū)動電源
關(guān)閉