我在我的springboot服務中使用hystrix實現斷路器概念。我在一個需要油門故障的門限數量的情況下,外部服務呼叫的方式使用HystrixCommand註解如下:如何創建動態hystrix命令threadPoolKey
@HystrixCommand(commandKey = "myCommandKey",
groupKey = "myGroupKey",
threadPoolKey = "myThreadPoolKey")
public String myHystrixMethod(String someParam) { ....}
現在,這裏myHystrixMethod駐留在不同的客戶端調用的服務。根據調用該服務的客戶端的類型,有一個邏輯來調用爲該特定客戶端指定的後端服務。
我想要做的是註冊由它自己的hystrix線程池中的特定客戶端調用的所有線程(請求)。這意味着,客戶端A的請求將僅在客戶端B的hystrix線程池中爲客戶端A註冊,而客戶端B在客戶端B的客戶端B中註冊。這將確保客戶B的請求,我的服務在客戶端A
不節流,由於故障對於這一點,我可以爲每個客戶單獨的服務方法(如上圖所示的一個),並相應地命名紅椎線程池。但是,採用這種方法,無論何時有新客戶,我都必須修改源代碼以添加它的服務方法。
有沒有一種方法可以根據參數(在這種情況下是客戶端ID)在@HystrixCommand註釋中動態創建選項?
我不認爲這是可能的。看一看。 https://github.com/Netflix/Hystrix/issues/350 – pvpkiran
看起來像hystrix這是不可能的。是否還有其他類似hystriix的斷路器解決方案可以動態地創建這些屬性? – Hary
還有其他的圖書館像jrugged和resilience4j。但我不認爲你會在那裏找到這個功能。看看,讓我們知道。 :) – pvpkiran