天天看點

首次公開!菜鳥彈性排程系統的架構設計

為什麼菜鳥需要彈性排程?

在彈性排程出現之前,菜鳥整體資源使用率都處于一個比較低的水準,這是因為:

1.線上應用一般是通過單機性能壓測,并且結合經驗預估業務流量的方式來确定所需容器數量。這種方式很大程度上會受到評估者主觀因素的幹擾,在估算業務流量時也通常會保留較大的備援。

2.以往的模式下,一個應用分組的擴縮容操作頻率很低,這使估算業務流量時,需要以每天的峰值流量以及未來一段時間(通常以月為機關)内業務的發展情況來作為評估标準。而一般峰值流量出現時段可能隻占全天時間的一小部分,非峰值時段就出現大量的資源浪費。

從接入的彈性應用分組表現來看,容量評估不準确是非常普遍的現象,而且與實際偏內插補點非常大。彈性排程作為一種線上動态評估系統運作狀态并且做出擴縮容決策的系統,它讓應用的開發者以及運維人員對資源的關注點,從具象化的容器數轉換成抽象程度更高的“目标”(例如合理的資源使用率目标,服務的合理rt目标),降低了人工評估時不可避免引入的主觀因素影響。另外,結合方舟平台提供的可靠、高效的擴縮容能力,對應用分組的擴縮容操作時效性可以達到分鐘級,進而真正意義上實作資源的“按需使用”。對于菜鳥來說,彈性排程是提升資源使用率最為行之有效的一種方式。

為什麼菜鳥更适合落地彈性排程?

彈性排程雖然能夠帶來較大的使用收益,但并不是适用于所有的公司或組織,而其之是以能夠成功在菜鳥進行落地,主要取決于以下幾點原因:

菜鳥的業務特點決定系統是協調商家,cp,消費者之間的資訊流轉,而且物流訂單流轉的長鍊路多互動的特點也決定了資訊流大于實操流即可,是以我們的系統面臨導購秒殺型的脈沖峰值菜鳥方舟彈性排程系統場景微乎其微。

菜鳥在2017年年初全面實作容器化并且接入混合雲架構體系後,已經完成了資源管理從“面向機器”到“面向應用”的轉變,應用的部署、擴縮容等核心運維流程得到了極大的簡化和提效。方舟平台作為容器資源管控平台,在經曆了2017年618、雙十一等大促活動的考驗後,其穩定性已經得到了充分的驗證,這就為彈性排程的落地創造了充分的技術基礎。

菜鳥的核心應用絕大多數都屬于無狀态的線上計算應用,每天業務壓力峰谷值差距明顯,這就為彈性排程的落地提供了足夠的業務場景基礎。

彈性排程并不是一項獨立的工程,需要很多基礎服務進行協助,并且依賴于統一、規範的系統環境。而菜鳥的應用遵從阿裡集團規範,彈性排程可以直接讀取alimonitor、鷹眼、alimetrics等工具提供的監控運維資料,并且核心應用所使用的技術棧基本上得到了收斂,這就位彈性排程的落地提供了充分的環境基礎。

基于如上四點,菜鳥才能以較小的成本快速實作了彈性排程。

與同類産品有什麼差別?

在集團内部已經有不少團隊開發了針對某個業務域的彈性排程産品,而業内部分公有雲服務商也提供了彈性伸縮服務,菜鳥彈性排程所面對的問題以及對應的産品思路上與這些同類産品有什麼差別呢?

首先,菜鳥彈性排程所期望覆寫的應用範圍是菜鳥所有的無狀态核心應用,這些核心應用所涉及的業務鍊路、邏輯特性、資源傾向性、業務流量特性等都存在非常大的差異性,很難抽象出一種通用的業務模式來描述這些應用。是以,不同于針對某個特定的業務域的彈性排程,菜鳥彈性排程在進行設計時不能進行過多的業務假設,在設計排程算法和政策模式時必須考慮到足夠的通用性;在配置上需要給予使用者充分的個性化能力以應對不同的業務場景;在系統結構設計時,需要考慮到政策橫向擴充能力,當有新的特殊業務場景出現時,能夠進行快速線性擴充。

其次,在應對複雜場景時,系統越是通用,所帶來的配置選項也就越多,公有雲上的彈性排程服務通常提供非常多的配置參數,正是因為他們希望通過這種“把問題抛給使用者”的方式,來抵消問題的複雜性,讓使用者自己為自身的穩定性和成本負責。這種彈性排程帶來的穩定性風險和成本節約效果完全依賴于使用者本身對于這項技術的了解。與之不同,我們作為菜鳥的基礎技術團隊,我們把自己的角色定義為穩定性和成本問題的解決者,而不是向我們的使用者抛去更多的問題,我們希望提供給菜鳥所有應用owner的不僅僅隻是像公有雲上彈性這樣的一種新的資源管理功能,而是替我們的使用者解決降低成本、提升穩定性。是以,在産品設計之初時,我們就希望絕大多數應用分組能夠做到一鍵接入彈性,把絕大多數應用的配置問題在使用者感覺之前就進行解決,将政策參數配置納入到我們的核心職責範圍内。而對于那些具有特殊性要求的應用,為其提供輔助性建議,幫助其進行少量的配置即完成彈性能力的引入。

彈性排程應用現狀

截止到目前為止,菜鳥已經基本實作了對容器數量15台以上(接入前)的無狀态應用分組進行彈性接入,接入應用分組的整體全天CPU平均使用率達到20%以上(計算方法為取分組CPU使用率與分組容器數的權重平均值)。每天擴縮容總容器數在3000台以上。在2017年雙十一時,彈性排程作為輔助手段從11月12日0點起對部分應用分組進行縮容,使菜鳥占用實體CPU核數與包裹數的比例得到顯著下降。

以下圖一展示的是一個應用分組一天當中CPU使用率與容器數的變化曲線對比;圖二展示的是該應用分組某個核心服務同時段流量變化曲線:

首次公開!菜鳥彈性排程系統的架構設計

菜鳥方舟彈性排程方案介紹

彈性排程的基本模式

首次公開!菜鳥彈性排程系統的架構設計

如前文所言,方舟的彈性排程希望提供給使用者的不隻是一種彈性操作叢集資源的能力,而是要對所有使用者的成本和穩定性優化這件事負責。由于目标應用在各方面差異性很大,所涉及的配置項數以千計并且一直處于動态變化狀态,全靠我們人工進行配置管理非常不現實。

由此,方舟彈性排程提出了一種閉環回報式的模式(如上圖所示)。彈性排程基礎能力基于應用分組運作情況和不同應用分組的政策配置參數,做出擴縮容決策,并通過方舟的容器操作服務調整叢集容器數量;應用分組叢集受到叢集容器數量變化的影響,會産生不同的表現行為(例如擴容時叢集平均CPU使用率會發生變化,服務rt會在一定範圍内下降等);應用分組的表現在以實時資料提供給彈性決策的同時,也會進行曆史資料的離線存儲(Alimonitor/EagleEye等集團标準監控系統都提供了這樣的資料服務);自動政策配置會周期性擷取這些曆史資料,并依照一定的算法,對不同的應用分組進行不同的政策配置,進而再次影響到彈性排程政策的決策。

這種模式的優越性在于:

1.具備一定程度的自我進化能力。當應用分組剛剛接入彈性時,其大多數的政策參數都為預設值;而當彈性運作一段時間後,結合自動評估方式,各種參數會得到不斷的修正以達到更好的彈性效果。以服務安全政策為例:服務安全政策在實時決策階段概括起來就是對目前服務rt于服務的sla門檻值進行比較,剛剛接入彈性時,服務的sla是基于服務接入彈性前的曆史rt來得到的,一般來說非彈性狀态下服務rt的表現,與彈性狀态下服務rt的表現是有很大的差別的,可能一開始由于服務sla設定得不合理(一般來說是過小),會出現“多擴”的現象,由服務rt違反sla引起的擴容會占到整體擴容原因的大多數。這種現象會被每天定時執行的分析任務捕捉到,判斷出sla設定得不合理,結合最近幾天的運作狀态,重新計算服務sla,由此提高門檻值設定的合理性;

2.以更高的抽象層次來進行海量參數的配置,以解決普遍問題。還是以服務rt的sla門檻值為例,當我們把配置視角關注到一個具體服務時,我們可能會糾結于一個服務它所對應的具體業務邏輯是什麼、它涉及的調用鍊路是什麼、上遊服務對它的容忍性等等細節問題,那麼這樣一來,面對菜鳥不同應用提供的成千上萬個服務,逐一配置根本不可能做到(注:每天都會服務會上線和下線,服務的業務邏輯也可能發生變化,配置是需要進行經常性更新的,這無疑使人工配置更加變得不現實)。而自動政策配置邏輯以更高的抽象層次來看待各項參數,對于服務rt,基于一個普遍适用的假設:“服務rt在一天當中的絕大多數時間都是處于合理狀态”,并且通過機率分布計算(服務rt真正的分布情況也可以通過曆史資料統計得到),可以得到一個數學意義上的sla門檻值(以正态分布為例,求得一段時間内服務的平均rt和rt分布标準差,即能得到在不同機率下應該設定的門檻值)。

首次公開!菜鳥彈性排程系統的架構設計

如上圖的正态分布曲線,我們如果把門檻值定為平均rt + 2個标準差,那麼依照機率粗略計算,我們假設一天當中有将近33分鐘服務處于rt過高狀态(1440分鐘 * (1 - 0.9544)/ 2),由此就得到了一個數學上合理的門檻值(這部分邏輯隻是服務安全政策邏輯的一小部分,具體在後文介紹該政策時具體說明)。這樣一來,對于各式各樣的服務,隻要能擷取到它的曆史監控資料,就能自動、快速地得到這個數學上的門檻值。

彈性排程的架構體系

首次公開!菜鳥彈性排程系統的架構設計

這部分就不在此做過分備援的解讀了,本文的其他部分或多或少會涉及到。

為什麼采用三層決策的模式?

首先介紹一下方舟彈性排程的三層決策:

1.第一層是政策決策,政策決策層由多個不同的政策組成,并且支援快速擴充。政策之間邏輯完全隔離,每個政策計算完成後都會獨立輸出動作(擴容、縮容、不變)和數量。為了能夠适應不同應用之間的異構,每個應用分組也可以根據實際情況啟動或關閉不同的政策。

2.第二層是聚合決策,聚合決策收集第一層所有政策的決策結果,并依據聚合規則得到一個合并後的<動作,數量>組。這一層的規則十分簡單:當同時存在擴容和縮容決策結果時,以擴容為準,忽視縮容結果;當存在多個擴容結果時,以擴容數量最多的結果作為最終結果;當存在多個縮容結果時,以縮容數量少的結果作為最終結果。

3.第三層是執行決策,這部分決策主要會考慮到一些規則,最終告訴擴縮容服務:要不要擴縮,要擴縮多少個容器,如果是縮容那麼要縮容哪幾個具體容器,如果是擴容那麼具體的容器規格、擴容到的機房等。執行決策進行判斷時需要考慮到的規則非常複雜,這裡簡單羅列一些相對重要的規則:

機房均攤規則;

目前應用分組的擴縮容狀态規則,例如如果本次為擴容:如果正在擴容,當本次擴容目标數量大于正在擴容的目标數量時,取內插補點再次發起一個擴容,由此實作并行擴容;當本次擴容目标數量小于正在擴容的目标數量時,忽略本次的擴容請求;若正在進行縮容,則立即停止縮容,并根據目标容器數和目前容器數發起擴容。

模式規則:彈性排程目前支援全自動擴縮模式、人工審批模式兩種,如果目前分組為人工審批模式,那麼本次決策會需要管理者進行審批。

最大值最小值保護規則:應用分組可以配置最大值最小值,執行決策會保證由彈性排程發起的擴縮任務,不會使最終容器數超過最大值或小于最小值。

此外,執行決策層對于單個分組來說是強一緻的,并且第二層輸出的決策結果,是叢集需要達到的目标容器數量,這種設計是前兩層能夠做到完全無狀态且幂等的重要因素。

三層決策器使每一層隻需要關注自己本身的決策邏輯,分離了“變與不變”的業務邏輯,對擴縮容的最終确定進行層層驗證,是實作“覆寫菜鳥大多數應用”目标的基礎。

如何做到計算的無狀态、幂等和高可用?

1.方舟彈性排程深度依賴了ISS,ISS作為一款經曆過大促考驗,并且為菜鳥很多核心業務提供異步任務排程服務的高可用中間件,在功能、性能和穩定性上都非常可靠。方舟彈性排程對于線上資料的擷取采用了“短頻周期性主動拉取”的模式,通過ISS提供的周期性異步任務調用功能,為每個應用分組在接入彈性時自動注冊一個獨立的ISS周期任務。ISS在發起任務時,會在目标叢集中随機進行選取,并且對任務執行時的生命周期進行管理,支援任務的重試。此外,ISS的用戶端也提供資源保護能力,當叢集中的某個程序壓力過高時會更換目标機進行重試。

2.方舟彈性排程的線上計算資料源自于内嵌式監控系統alimetrics。alimetrics是伴随web容器的一種嵌入式metrics系統,包含非常豐富的監控項。當需要擷取應用分組的細粒度監控資料時,這種資料查詢、讀取、傳輸壓力是被分攤到每一個目标容器的,而非一個集中式的資料中心,這種設計使得資料源不存在單點,資料源的可靠性和壓力容忍能力相比于依賴一個中心式的資料服務來說,要優越很多。

3.為了過濾毛刺,所有計算都基于或大或小的滑動時間視窗。通過alimetrics擷取較短時間視窗(1小時以内)資料時能擁有非常高的性能,并且對應用的幹擾非常小,這樣就降低了計算的重試成本。基于這一能力,彈性排程的計算任務可以在每次執行時重新擷取一個時間視窗内的全部監控資料,而不需要在自身記憶體中維護一個滑動視窗,這是彈性排程計算無狀态的基礎;

4.彈性排程三層決策器中,第三層與其他兩層部署在不同的叢集中。由于無論應用分組狀态如何,第一層和第二層都要進行短頻周期性計算,而隻有在需要進行擴縮容時(隻占一天中很小的一部分)才會将任務發往第三層,是以将強一緻性的範圍限定在第三層,在保證可靠性的同時,對性能影響最少。而第二層輸出到第三層的決策數量,以“目标容器數”而非“擴縮容數量”的形式給出,這樣一來,即使在同一時刻對于一個應用分組有多個彈性決策任務在執行,向第三層輸出多個決策結果,也不會影響最終的擴縮容行為。

決策政策

方舟彈性排程的決策政策支援快速橫向擴充,目前已經包含多個決策政策,部分政策處于測試驗證狀态,這裡對幾個最為核心,同時也是最早上線運作的政策進行介紹:

資源安全政策

資源安全政策關注的是系統資源使用情況。目前,基于以往的運維經驗以及菜鳥的業務特點,資源安全政策關注CPU、LOAD1和Process Running隊列三個系統參數。當其中有一項以上,在近期時間視窗内的叢集平均(為了消除毛刺和流量不均帶來的影響)違反上限門檻值時(支援個性化配置),發起擴容。當存在多項違反時,取需要擴容數量最大的一項為目前政策決策結果(數量計算方法在後面給出)。

首次公開!菜鳥彈性排程系統的架構設計

上圖是一個資源安全政策得到擴容結果時的資源使用情況。

資源優化政策

資源優化政策同樣關注的是系統資源的使用情況,但是它的存在是為了在系統空閑時回收資源。同樣關注上述三個系統參數,當這三項同時低于下限門檻值時,發起縮容。注意,由于第二層決策器的存在,當有其他決策器要求擴容時,資源優化政策産生的縮容需求就會被抑制。

首次公開!菜鳥彈性排程系統的架構設計

上圖是一個資源優化政策得到縮容結果時的資源使用情況。

時間政策

目前的彈性決策模式是後驗的,即在發生門檻值違反後,才發起擴容。對于有些業務來說,存在有規律的流量突然上揚,例如一些定時計算任務。自動政策配置基于應用的曆史流量變化情況,當判定流量變化為周期性變化,且變化幅度過大,後驗式彈性無法及時跟上時,會為這個分組生成一個時間政策配置,即在每天的指定時間段内,将叢集容器數維持在一個指定數量之上。由于第二層決策器的存在,當其他政策在這個時間段内判斷需要的容器數,大于配置的指定數量,那麼以較大的一項作為結果;而在這段時間内,由于時間政策會持續生成擴容結果(如果數量已經滿足,那麼生成擴容決策,但數量為0),其他的縮容決策結果會被持續抑制。

服務安全政策

服務安全政策是目前最為複雜的一個政策,目前,服務包含消息隊列Consumer、RPC服務、HTTP服務三種。每天有至少一半以上的擴容任務是由服務安全政策發起的。

選擇qps還是rt?

很多的彈性排程系統會選擇服務的qps作為最重要的一個考慮因素,但是我們在經過前期的一系列思考讨論後,決定放棄qps而使用rt,主要出于以下幾點原因:

1.qps是一個服務的變量,它的變化受限于使用者的使用情況。你可以判斷對于xx業務,在目前時刻的qps是否合理,但是對系統來說,隻要能夠承載,服務成功率和rt在合理範圍内,qps取任何值都是合理的。換句話說,目前總qps可以作為業務健康度判斷依據,但不能作為系統(狹義)健康程度的判斷依據(單機最大可承受qps與之不同,注意差別)。rt和服務成功率才是一個服務最為根本的表現特性。

2.通過目前qps和單機最大可承受qps來得到目前容器數,在資源完全隔離,且每個query使用的資源近乎相等時才成立。而對于菜鳥的應用來說:

很多核心應用是跨業務鍊路的,服務千姿百态。一個資料查詢服務和一個涉及業務操作的服務很可能出現在同一個應用分組上,此時,總qps這個概念變得毫無意義,而擷取不同服務單個請求與資源的關系根本不可能。

目前的容器隔離效果并不是特别完美,在全鍊路壓測時經常出現同實體機容器使用同構資源互相争搶的現象,這就使線上實際運作環境與單機性能壓測的環境無法做到相同,單機性能壓測資料的參考意義值得懷疑。

服務可能随時都在變化,而單機性能壓測并不能在每次發生變化時及時跟進,時效性無法保證。

門檻值比較與多服務投票

如何為海量服務的rt自動配置門檻值已經在前面的例子中已經對此做過介紹,此處不再進行贅述。但是需要注意的是:由于這種門檻值設定隻是數學上的“合理門檻值”,還需要其他手段進行修飾。是以我們又引入一個假設:如果是資源不足引起的rt違反門檻值,那麼該分組中所有的服務都會受到影響。這是因為應用分組内服務之間所使用的資源是沒有隔離的,他們使用同一個系統環境(受到影響并不意味着所有服務都會違反門檻值,不同的服務所依賴的資源種類并不相同,對資源短缺的耐受能力也不相同)。

是以,我們采用了一種“多服務投票”模式來進行rt判斷。每個服務分别進行獨立的門檻值比較,當rt違反門檻值的服務占總服務的比例達到一定程度時,才做出擴容決策,服務安全決策的擴容數量由門檻值違反程度(按違反百分比來計算)最高的服務決定。

從實際運作的情況來看,當采用“隻要有服務違反門檻值就進行擴容”的方式運作時,出現誤擴、多擴的頻率非常高,而引入這種“多服務投票”模式後,誤擴、多擴基本上被消除了(實際上人工判斷一個擴容是否為誤擴、多擴時也常常采用這種模式,發現多個服務的rt同時飙高時,則認為擴容合理)。此外,一個應用分組所提供的服務越多,這種模式運作的效果越好。

下遊分析

并不是所有的rt違反門檻值情況都需要擴容,如果是所依賴的中間件或下遊服務導緻的rt升高,擴容并不能解決問題,甚至還有可能造成更壞的影響(例如db線程池滿)。是以,服務安全政策在進行計算時,如果發現一個服務違反了它的門檻值,會先查詢它的下遊依賴服務、中間件調用rt是否違反各自的sla,隻有在服務自身違反門檻值,但下遊服務和中間件沒有違反門檻值時,才會參與擴容投票。離線任務基于曆史資料計算服務的sla時,同時也會計算它的依賴服務與中間件的門檻值,其中鍊路結構資料來自于鷹眼的離線資料。

一些其他的專項問題

如何處理毛刺?

彈性排程需要保證擴容足夠及時,但又要對系統的毛刺有足夠的耐受能力,否則會造成誤擴、誤縮。毛刺在實際環境中是普遍現象,不僅流量不均、網絡抖動等環境問題會導緻毛刺的發生,監控統計系統潛在的異常和bug也有可能會誘發毛刺。

為此,方舟彈性排程在進行任何計算時,都會引入時間視窗資料作為計算源頭,而每塊時間的資料内,包含的是一個叢集所有容器的資料:

首次公開!菜鳥彈性排程系統的架構設計

計算時,對于每個所需的監控項,會去掉時間視窗内的最大值和最小值,然後求取平均,以此來抹去毛刺帶來的影響。另外,時間視窗的大小對于去毛刺以及及時性也會有很大的影響。目前,方舟彈性排程中存在5分鐘和10分鐘兩種不同規格的時間視窗。對于可能會導緻擴容的政策來說,選取較小的時間視窗,而對于可能會導緻縮容的政策來說,選取較大的時間視窗(我們希望擴容相對于縮容來說,更加激進)。

如何計算擴容和縮容數量?

在确定了是否要擴縮後,第二步便是确定擴縮容數量。首先介紹縮容,由于縮容速度相對于擴容較快,且縮容慢不會影響穩定性,是以方舟彈性排程的縮容采用一種“小步快跑”的方式,隻要決定縮容,那麼固定縮容的容器數量為叢集目前容器數量的10%。

擴容數量的判斷相對于縮容來說要複雜得多,我們這裡以最為常見的門檻值比較類政策的數量決策為例。首先,定義一個大的原則:每次擴容數量最大不得超過叢集目前容器數的50%,在這個範圍内,對門檻值違反的程度越高,擴容的容器數量越多。是以我們在這裡引入sigmoid函數,通過一定的轉換使其計算結果在0~0.5之間,将門檻值違反程度百分比作為入參代入sigmoid函數(當然,會進行一些參數的調整),進而得到擴容的百分比。

sigmoid函數是一個在0~1之間變化的曲線,常用于資料的歸一化計算。對于f(x)=sigmoid(x) - 0.5來說,當x > 0時,該函數的取值在0 ~ 0.5之間。

對于像CPU使用率這種資料來說,有一個差別是該項的取值最大不會超過100,存在一個上限;而諸如服務rt這類的資料則不存在上限。那麼顯然,完全用同一個公式會導緻CPU觸發的擴容數量小于服務rt觸發的擴容數量。此時,隻需要設定一個目标,例如我們希望當CPU使用率達到80%,即違反程度為 (80% - 門檻值)/ 門檻值時,擴容比例接近50%,基于這個目标對f(x)進行逆運算就能得到系數a,使進行針對CPU的擴容數量計算時代入這個系數a,就能得到所期望的結果。

如何實作鍊路容量的彈性?

隻要鍊路上所有應用分組都接入了彈性,那麼已經可以認為此鍊路的容量也具備彈性。

如何應對大促的場景?

方舟通過“容器計劃”和彈性排程進行配合的方式,為大促提供了完整的資源管了解決方案。容器計劃可以讓各個應用Owner在指定的大促時間段内(包括壓測和大促時段)提出容量申請。當接入彈性的應用分組在進入大促時間段内,彈性排程的擴縮容模式會立即轉變成人工确認模式,并且将會把叢集容器數擴容到容器計劃所申請的數量。當大促時間段結束時,非彈性的應用分組将會直接縮容回原有容器數量;而彈性應用分組則會通過彈性政策進行緩慢資源回收。

在大促時間段内,盡管彈性排程沒有自動進行擴縮容,但是擴縮容決策依然在進行中。彈性排程會持續向管理者或大促決策小組發出容器擴縮容建議,一方面在流量超出預期、資源不足時及時發出警告并且提供建議的擴容數量,也能協助管理者對一些資源進行及時的回收,幫助進行縮容決策。

彈性排程如何推動業務本身的演進?

彈性排程推動業務本身的演進是我們一直以來的目标,對我們來說,隻有這樣才可以形成真正意義上的業務閉環。這種推動主要是采用資料分析的方式進行,目前彈性排程會産出以下幾種資料:

rt|資源相關性,反映了服務rt和CPU等系統資源使用率的相關程度,相關程度越高,則服務使用情況對資源越敏感,使用彈性排程的收益也越明顯;

中間件穩定性,反映了由中間件rt超出門檻值引起的服務rt違反。由于服務rt的升高直接影響到了服務的可用性,是以當這項資料過高時,會建議檢查中間件的使用情況,進行優化;

下遊穩定性,反映了由下遊服務rt超出門檻值引起的服務rt違反。當這項資料過高時,會建議目前應用推動下遊服務穩定性更新,或者推動下遊彈性化;

應用啟動時效,一個擴容任務直到應用執行個體啟動完成,能夠對外正常服務才認為成功,應用啟動時間越短,那麼彈性排程對其擴容也就越及時,當出現流量洪峰時也能最快速度進行保護;

限流配置合理性。我們發現不少接入的應用在服務rt都處于正常範圍,且系統資源使用率極低的情況下居然觸發了自身所配置的限流值,對于這種情況,會建議應用進行合理的業務分析和測試來調整限流值配置。

原文釋出時間為:2018-03-8

本文作者:長陵

繼續閱讀