Spring Cloud使用指南 Hystrix

2021-10-05 23:18:53 字數 2065 閱讀 3172

hystrix也是netflix家的產品、在與feign整合ribbon整合上有著天然的優勢、所以本次會在上次整合feign的基礎上再次加以改進。

1、hystrix概述

2、服務降級

3、服務熔斷

4、dashboard服務監控

hystrix值得說道的主要有服務降級、服務熔斷和服務限流、這裡先講降級和熔斷。

hystrix是提高系統服務容錯性的東東、說白了就是抗風險抗異常能力、是電路中的保險絲、但他比保險絲更智慧型的一點是、hystrix保障的服務如果發生服務熔斷了、還會看情形試圖自動恢復服務功能。

服務熔斷主要有三種方法配置。一般在消費模組配置。

第一是在消費者controller方式實現上標註@hystrixcommand並指定異常通知方法、當該方法發生了異常時、將會執行指定的異常通知方法。

第二是在消費者controller類上標註@defaultproperties註解並指定全域性的異常通知方法。

第三是單獨編寫乙個callback類、實現某個具體介面、來定製該介面的異常通知、因為我們做了feign介面抽取、所以我們在介面模組配置。

第四是單獨寫乙個fallbackfactory的實現類、泛型限定乙個介面、然後重寫其create方法、在實現內可以列印異常資訊和指定每個方法的異常通知、較callback類靈活、推薦使用

最後、這些編寫的額外類都需要注入到ioc容器內才可使用、同時在yml檔案內開啟對hystrix的支援:

feign:

hystrix:

enabled:

true #本模組要處理服務容錯就開啟

然後在啟動類上配置@enablehystrix

服務熔斷配置在服務提供模組、當滿足服務熔斷配置要求後、後續的請求會直接呼叫服務降級指定的異常通知、當hystrix判定可以繼續提供服務時、才會重新放開請求、執行服務。

該配置可以配到服務提供模組的controllr層、如果沒有指定異常通知、將會呼叫callback指定的方法。

//服務熔斷

@hystrixcommand

(commandproperties =

)

dashboard是hystrix整合的乙個監控模組、可以監控模組服務的訪問情況等很多資訊、來除錯和優化服務架構。

這裡需要乙個單獨的模組cloud-hystrix-dashboard-9001為例

org.springframework.cloud<

/groupid>

spring-cloud-starter-netflix-hystrix-dashboard<

/artifactid>

<

/dependency>

4.2、yml檔案

9001

server.port=

9001

4.3、啟動類

@enablehystrixdashboard

4.4、被監控模組

這樣乙個監控模組就搭建成功了、但是還需要被監控模組的配合、

這裡被監控模組一般是服務提供模組、該模組需要滿足2個條件、1是引入如下依賴

`

org.springframework.cloud<

/groupid>

spring-cloud-starter-netflix-hystrix<

/artifactid>

<

/dependency>`

org.springframework.boot<

/groupid>

spring-boot-starter-actuator<

/artifactid>

<

/dependency>

2是在啟動類上新增`@enablehystrix 註解、同時在yml上

#hystrix監控配置

management:

endpoints:

web:

exposure:

include:

"*"

Ubuntu apt 使用指南

起初gnu linux系統中只有.tar.gz。使用者必須自己編譯他們想使用的每乙個程式。在debian出現之後,人們認為有必要在系統中新增 一種機制用來管理安裝在計算機上的軟體包。人們將這套系統稱為dpkg。至此著名的 package 首次在gnu linux上出現。不久之後紅帽子也 開始著手建立...

CImageList使用指南

1.綜述 在mfc 中cimagelist 類封裝了 影象列表控制項的功能,影象列表是乙個具有相同大小的 影象 可以是不同 型別 的集合,其主要用於 應用程式中大規模 圖示的儲存。該控制項是不可 見的,通常與其它如 clistbox ccombobox ccomboboxex ctabctrl 以及...

CImageList使用指南

cimagelist使用指南 1.綜述 在 mfc中cimagelist類封裝了影象列表控制項的功能,影象列表是乙個具有相同大小的影象 可以是不同型別 的集合,其主要用於應用程式中大 規模圖示的儲存,該控制項是不可見的。通常與其它如clistbox,ccombobox,ccomboboxex以及ct...