摘要:是所在的線程池,如果該參數(shù)不設(shè)置則使用作為,這種情況下同一個下的依賴調(diào)用共用同一個線程池內(nèi),如果不想共用同一個線程池,則需要設(shè)置該參數(shù)。每個必須要配置一個分組名,一個是用于分組,還有如果沒有配置,這個分組名將會用于線程池名。
Hystrix是什么
分布式服務(wù)系統(tǒng)通常會通過HTTP或RPC方式調(diào)用所依賴的服務(wù),例如支付服務(wù)通過HTTP或RPC調(diào)用銀行卡服務(wù)。在高并發(fā)請求的情景下,依賴的服務(wù)可能會出現(xiàn)服務(wù)異常、網(wǎng)絡(luò)連接緩慢、資源繁忙、暫時不可用、服務(wù)脫機等情況,這些異常情況將會嚴(yán)重影響整個線上系統(tǒng)的穩(wěn)定性和可用性,最糟糕的情況是產(chǎn)生服務(wù)雪崩效應(yīng)。復(fù)雜的分布式服務(wù)系統(tǒng)往往會依賴更多的其它服務(wù),在高并發(fā)的情況下,如果沒有做好隔離措施,這些依賴將會拖垮整個服務(wù)調(diào)用者。Hystrix是Netflix的一個幫助解決分布式服務(wù)系統(tǒng)交互時超時處理和容錯的類庫,它具有降級和熔斷的保護能力,可以優(yōu)雅的解決上述問題。
屬性配置:
1 HystrixCommandKey
Hystrix使用單例模式存儲HystrixCommand,熔斷機制就是根據(jù)單實例上的調(diào)用情況統(tǒng)計實現(xiàn)的,所以每個HystrixCommand要有自己的名字,用于區(qū)分,同時用于依賴調(diào)用的隔離。HystrixCommandKey就是用于定義這個名字,如果沒有定義這個名字,Hystrix會使用其類名作為其名字,可以使用HystrixCommandKey.Factory.asKey(String name)方法定義一個名稱。
2 HystrixThreadPoolKey
HystrixThreadPoolKey是HystrixCommand所在的線程池,如果該參數(shù)不設(shè)置則使用HystrixCommandGroupKey作為HystrixThreadPoolKey,這種情況下同一個HystrixCommandGroupKey下的依賴調(diào)用共用同一個線程池內(nèi),如果不想共用同一個線程池,則需要設(shè)置該參數(shù)。可以使用HystrixThreadPoolKey.Factory.asKey(String name)方法設(shè)置。
3 HystrixCommandGroupKey
Hystrix需要對HystrixCommand進行分組,便于統(tǒng)計、管理,所以需要一個分組名稱,HystrixCommandGroupKey就是用于定義分組名稱,可以使用HystrixCommandGroupKey.Factory.asKey(String name)方法定義一個分組名。每個HystrixCommand必須要配置一個分組名,一個是用于分組,還有如果沒有配置HystrixThreadPoolKey,這個分組名將會用于線程池名。
4 HystrixThreadPoolProperties
從名稱上可以看出這是線程池的屬性配置,可以通過它設(shè)置核心線程數(shù)大小、最大線程數(shù)、任務(wù)隊列大小等,當(dāng)然它也又一些默認的配置參數(shù)。
5 HystrixCommandProperties
這個就是HystrixCommand的屬性配置,它可以設(shè)置熔斷器是否可用、熔斷器熔斷的錯誤百分比、依賴調(diào)用超時時間等,它有一些默認的配置參數(shù),如熔斷器熔斷的錯誤百分比默認值是50%、依賴調(diào)用超時時間默認值是1000毫秒。
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/69017.html
摘要:傳播安全上下文或使用,通過增加的屬性,來增加相關(guān)的配置來達到執(zhí)行隔離策略,控制線程數(shù)或者控制并發(fā)請求數(shù)來達到熔斷降級的作用。 SpringCloud(第 015 篇)電影Ribbon微服務(wù)集成Hystrix增加隔離策略控制線程數(shù)或請求數(shù)來達到熔斷降級的作用 - 一、大致介紹 1、本章節(jié)介紹關(guān)于Hystrix的2種隔離方式(Thread Pool 和 Semaphores); 2、Thr...
摘要:注意注解能注冊到服務(wù)上,是因為該注解包含了客戶端的注解,該是一個復(fù)合注解。地址可以查看該微服務(wù)網(wǎng)關(guān)代理了多少微服務(wù)的。 SpringCloud(第 020 篇)Zuul 網(wǎng)關(guān)模塊添加 listOfServers 屬性,達到客戶端負載均衡的能力 - 一、大致介紹 1、本章節(jié)添加另外一個屬性 listOfServers 來給 zuul 賦上異樣的功能色彩,提供負載均衡的能力; 2、而其實說...
摘要:圍繞上面描述的問題,以及對于報警聚類處理的分析假設(shè),本文主要做了以下事情選定聚類算法,簡單描述了算法的基本原理,并給出了針對報警日志聚類的一種具體的實現(xiàn)方案。算法選擇聚類算法采用論文中描述的根因分析算法。聚類算法算法的執(zhí)行,我們以圖來表示。 背景 眾所周知,日志是記錄應(yīng)用程序運行狀態(tài)的一種重要工具,在業(yè)務(wù)服務(wù)中,日志更是十分重要。通常情況下,日志主要是記錄關(guān)鍵執(zhí)行點、程序執(zhí)行錯誤時的現(xiàn)...
SpringCloud(第 019 篇)Zuul 網(wǎng)關(guān)微服務(wù)的一些屬性應(yīng)用測試 - 一、大致介紹 1、本章節(jié)根據(jù)官網(wǎng)資料,嘗試了一些其它屬性的設(shè)置,比如 path、serviceId、prefix、strip-prefix 等應(yīng)用; 2、這些組合試用的場景大多數(shù)在一些地址方面需要重新映射或者針對特殊地址做特殊處理等,至于其它一些深層次的應(yīng)用大家做過知道的話也可以告盡情回帖讓大家都來學(xué)習(xí)學(xué)習(xí)。 二、...
摘要:注意注解能注冊到服務(wù)上,是因為該注解包含了客戶端的注解,該是一個復(fù)合注解。地址可以查看該微服務(wù)網(wǎng)關(guān)代理了多少微服務(wù)的。 SpringCloud(第 018 篇)Zuul 服務(wù) API 網(wǎng)關(guān)微服務(wù)之代理與反向代理 - 一、大致介紹 1、API 服務(wù)網(wǎng)關(guān)顧名思義就是統(tǒng)一入口,類似 nginx、F5 等功能一樣,統(tǒng)一代理控制請求入口,弱化各個微服務(wù)被客戶端記憶功能; 2、本章節(jié)主要講解了使用...
閱讀 2161·2021-11-15 11:36
閱讀 1496·2021-09-23 11:55
閱讀 2494·2021-09-22 15:16
閱讀 2032·2019-08-30 15:45
閱讀 1868·2019-08-29 11:10
閱讀 1032·2019-08-26 13:40
閱讀 921·2019-08-26 10:44
閱讀 3174·2019-08-23 14:55