在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 教程/ 大數(shù)據(jù)/ Throttling 節(jié)流模式
索引表模式
Sharding 分片模式
外部配置存儲模式
命令和查詢職責(zé)分離(CQRS)模式
靜態(tài)內(nèi)容托管模式
運行重構(gòu)模式
計算資源整合模式
Throttling 節(jié)流模式
斷路器模式
事件獲取模式
實體化視圖模式
緩存預(yù)留模式
守門員模式
聯(lián)合身份模式
補償交易模式
重試模式
領(lǐng)導(dǎo)人選舉模式
優(yōu)先級隊列模式
健康端點監(jiān)控模式
消費者的競爭模式
基于隊列的負載均衡模式
仆人鍵模式
管道和過濾器模式
調(diào)度程序代理管理者模式

Throttling 節(jié)流模式

控制由應(yīng)用程序使用,一個單獨的租戶或整個服務(wù)的一個實例的資源的消耗。這種模式可以允許系統(tǒng)繼續(xù)運行并滿足服務(wù)水平協(xié)議,即使當增加需求的資源放置一個極端載荷。

背景和問題

在云應(yīng)用負載通常上變化的基礎(chǔ)上的活動用戶的數(shù)量或他們正在執(zhí)行的活動類型的時間。例如,多個用戶可能會在工作時間被激活,否則系統(tǒng)可能被要求在每月結(jié)束時執(zhí)行計算昂貴的分析。也有可能是突然和意外的突發(fā)活動。如果系統(tǒng)的處理要求超過了可用的資源的能力,其將遭受性能不佳,甚至?xí)?。該系統(tǒng)可能必須滿足的服務(wù)約定的水平,并且這種故障可能是不可接受的。

有許多策略可用于處理可變負載在云中,根據(jù)業(yè)務(wù)目標的應(yīng)用程序。一種策略是使用自動縮放來在任何給定時間相匹配的供應(yīng)資源給用戶的需要。這具有始終如一地滿足用戶需求,同時優(yōu)化運行費用的潛力。然而,盡管自動縮放可能會引發(fā)更多的資源配置,這配置是不是瞬間。如果需求快速增長,有可能是一個時間窗口,那里是一個資源赤字。

解決方案

另一種策略來自動縮放是為了讓應(yīng)用程序能夠使用的資源最多只有一些軟限位,然后油門當他們達到此限制。該系統(tǒng)應(yīng)監(jiān)測它是如何使用的資源,使得當使用量超過一些系統(tǒng)定義的閾值時,它可以調(diào)節(jié)來自一個或多個用戶的請求,以使系統(tǒng)繼續(xù)工作,并滿足任何服務(wù)級別協(xié)議(SLA),該已到位。有關(guān)監(jiān)控資源使用情況的詳細信息,請參閱儀器和遙測指導(dǎo)。

該系統(tǒng)可以實現(xiàn)多種限制策略,其中包括:

  • 從誰已經(jīng)訪問系統(tǒng)API超過每秒n次超過給定時間內(nèi)的個人用戶拒絕請求。這就要求系統(tǒng)米利用資源用于運行應(yīng)用程序的每個租戶或用戶。欲了解更多信息,請參閱服務(wù)計量指引。
  • 禁用或有辱人格的選擇不必要的服務(wù)的功能,以便必要的服務(wù)可以提供足夠的資源運行暢通。例如,如果應(yīng)用程序是視頻流輸出,它可以切換到一個較低的分辨率。
  • 使用負載均衡來平滑活動量(這種方法是覆蓋在由基于隊列的負載均衡模式的更多細節(jié))。在多租戶環(huán)境中,這種方法將減少為每一個租戶的性能。如果系統(tǒng)必須支持的住戶有不同的SLA的組合,為高價值租戶的工作可能會被立即執(zhí)行。請求其他住戶可以忍住,以及時處理積壓有所緩解。優(yōu)先級隊列模式,可以用來幫助實現(xiàn)此方法。
  • 代表低優(yōu)先級的應(yīng)用程序或租戶被推遲執(zhí)行的操作。這些操作可以暫停或削減,異常生成的通知,該系統(tǒng)正忙,該操作應(yīng)該稍后重試房客。

圖1示出一個區(qū)域圖進行資源利用率(存儲器,CPU,帶寬,以及其它因素的組合)對時間對于正在使用的三個特征的應(yīng)用程序。一個特征是功能性的區(qū)域,例如,執(zhí)行特定的任務(wù)集,一個代碼段,執(zhí)行一個復(fù)雜的計算,或者,提供了一個服務(wù),例如在內(nèi)存中緩存的元素的組分。這些特征被標記為 A,B 和 C。

http://wiki.jikexueyuan.com/project/cloud-design-patterns/images/t.png" alt="" />

圖1 - 對時間的曲線圖的資源利用率代表三個用戶運行的應(yīng)用程序

注意:

立即行功能下的區(qū)域表示應(yīng)用程序中使用時,調(diào)用此功能的資源。例如,下面的線為特色的一個區(qū)域顯示使用的是正在使用的功能 A 的應(yīng)用資源,并為特征 A 和特征 B 線之間的區(qū)域被使用的應(yīng)用程序調(diào)用功能 B.匯總的指示資源對于每個特征區(qū)域顯示了系統(tǒng)的總的資源利用率。

在圖1中的曲線示出了延遲操作的效果。只是之前的時間 T1,分配給使用這些功能的所有應(yīng)用程序的總資源達到一個閾值(資源利用的軟限制)。在這一點上,應(yīng)用程序是在用盡可用的資源的危險。在這個系統(tǒng)中,特征 B 比特點 A 或特征 ? 不太重要,所以它是暫時禁用,并且它被使用的資源被釋放。之間的時間 T1,T2,使用功能 A 和功能 C 中的應(yīng)用程序繼續(xù)運行正常。最后,資源利用這兩個功能減退的點時,在時間 T2 時,有足夠的容量,以再次啟用功能 B 中。

該自動縮放和調(diào)節(jié)方法也可以結(jié)合,以幫助保持應(yīng)用程序響應(yīng)和 SLA 之內(nèi)。如果需求預(yù)計將保持高位,節(jié)流可以提供一個臨時的解決方案,同時在系統(tǒng)擴展了。在這一點上,該系統(tǒng)的全部功能可以恢復(fù)。

圖 2 示出了整體的資源利用通過在與時間的系統(tǒng)中運行的所有應(yīng)用程序的區(qū)域圖,并示出了如何限制可與自動縮放組合。

http://wiki.jikexueyuan.com/project/cloud-design-patterns/images/t1.png" alt="" />

圖2 - 圖表顯示自動縮放與節(jié)流相結(jié)合的效應(yīng)

在時間T1,門檻指定資源利用的軟限制為止。在這一點上,系統(tǒng)可以開始向外擴展。然而,如果新的資源不成為可用的足夠快地再現(xiàn)有的資源可能被耗盡,并且系統(tǒng)可能會失敗。為了防止這種情況發(fā)生,系統(tǒng)被暫時限制,如前面所述。何時自動縮放已完成和額外資源,限制可以放寬。

問題和注意事項

在決定如何實現(xiàn)這個模式時,您應(yīng)考慮以下幾點:

  • 節(jié)流的應(yīng)用程序,并使用策略,是一個建筑的決定,影響系統(tǒng)的整體設(shè)計。節(jié)流應(yīng)在應(yīng)用設(shè)計之初就被考慮,因為這是不容易的添加它一旦系統(tǒng)已經(jīng)實施。
  • 節(jié)流必須迅速執(zhí)行。系統(tǒng)必須能夠檢測活性增加,并相應(yīng)地作出反應(yīng)。該系統(tǒng)還必須能夠恢復(fù)到原來的狀態(tài)后快速負載有所緩和。這需要相應(yīng)的性能數(shù)據(jù)是不斷捕獲和監(jiān)測。
  • 如果一個服務(wù)需要暫時拒絕用戶的請求,則它應(yīng)該返回一個特定的錯誤代碼,以使客戶端應(yīng)用程序理解為拒絕執(zhí)行某種操作的原因是由于節(jié)流??蛻舳藨?yīng)用程序可以等待一段時間,然后重試該請求。
  • 節(jié)流可作為而系統(tǒng) autoscales一項臨時措施。在某些情況下它可能是更好的簡單節(jié)流,而不是按比例,如果在活動突發(fā)是突然的并且預(yù)計不會被長壽命,因為結(jié)垢可顯著增加了運行成本。
  • 如果節(jié)流正在使用的臨時措施,而一個系統(tǒng) autoscales,并且如果資源需求迅速增長,系統(tǒng)可能無法繼續(xù)運作,即使在節(jié)流模式中操作時。如果這是不能接受的,考慮維護大容量的儲備和配置更積極自動縮放。

何時使用這個模式

使用這種模式:

  • 為了確保系統(tǒng)持續(xù)滿足服務(wù)水平協(xié)議。
  • 為了防止單一租戶獨占由應(yīng)用程序所提供的資源。
  • 為了處理突發(fā)活動。
  • 為了幫助限制需要保持它運轉(zhuǎn)的最大資源水平的成本優(yōu)化的系統(tǒng)。

例子

圖3示出了如何限制可以在多租戶系統(tǒng)來實現(xiàn)。從每個租戶組織的用戶訪問一個云托管的應(yīng)用程序,他們填寫并提交調(diào)查。應(yīng)用程序中包含的儀器,用于監(jiān)視在其中這些用戶提交請求給應(yīng)用程序的速度。

為了防止用戶從一個租戶影響應(yīng)用的所有其他用戶的響應(yīng)性和可用性,限制施加到每秒從任何一個租戶的用戶可以提交請求的數(shù)目。該應(yīng)用程序塊請求超過此限制

http://wiki.jikexueyuan.com/project/cloud-design-patterns/images/t2.png" alt="" />

圖3 - 在一個多租戶應(yīng)用程序中實現(xiàn)節(jié)流