spring cloud使用hystrix实现断路保护机制
斷路保護(hù)機(jī)制:即容錯(cuò)性,在微服務(wù)架構(gòu)中,系統(tǒng)之間都是相互依賴(lài)的,如果一個(gè)系統(tǒng)出現(xiàn)了異常,就會(huì)出現(xiàn)如下情況:
斷路保護(hù)機(jī)制就是為了解決這種情況。
hystrix的大致原理如下:
spring cloud中使用斷路保護(hù)機(jī)制非常簡(jiǎn)單
1.添加依賴(lài)
2.在調(diào)用其他系統(tǒng)的方法上添加一個(gè)注解:
@HystrixCommand(fallbackMethod = "methodName")創(chuàng)建一個(gè)方法名為methodName的方法,并實(shí)現(xiàn)其邏輯,該邏輯就是在熔斷的時(shí)候執(zhí)行的邏輯,該方法的返回值需要和原方法一致。這個(gè)注解的目的就是將這個(gè)調(diào)用遠(yuǎn)程方法進(jìn)行打包,并啟動(dòng)另一個(gè)線(xiàn)程來(lái)處理。
這個(gè)注解中出了fallbackMethod這個(gè)屬性外,還有一個(gè)比較重要的:
3.在啟動(dòng)類(lèi)上添加注解,啟動(dòng)hystrix
@EnableHystrix這時(shí),如果我們的系統(tǒng)去調(diào)用其他系統(tǒng)出現(xiàn)問(wèn)題時(shí),就會(huì)執(zhí)行我們自己定義的方法methodName。
hystrix的默認(rèn)熔斷策略是5秒內(nèi)出現(xiàn)20次調(diào)用異常,就會(huì)在一段時(shí)間內(nèi)不去調(diào)用遠(yuǎn)程接口,直接調(diào)用methodName,過(guò)一段時(shí)間才會(huì)重新連接遠(yuǎn)程接口。
總結(jié)
以上是生活随笔為你收集整理的spring cloud使用hystrix实现断路保护机制的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Chrome插件-新浪微博阅读器
- 下一篇: JSP中文乱码问题解决方案