以下示例均基於springcloud的greenwich.sr1版本。
>
>
>
org.springframework.cloudgroupid
>
>
spring-cloud-starter-netflix-hystrixartifactid
>
dependency
>
dependencies
>
以@enablehystrix修飾啟動乙個springboot應用。
@enablehystrix
class hystrixclientstarter
funmain
(args: array
)
server
:port
:6602
spring::
name
: hystrix-client
再寫乙個簡單的controller來試一下效果。
@restcontroller
class democontroller
funfallback
(name: string)
: string
}
用@hystrixcommand註解來為乙個方法增加熔斷的能力。只需要定義乙個和目標方法(上述例子為hello())結構一致的方法,在註解中傳入即可。
為了測試,目標方法中故意拋了乙個異常來模擬微服務異常。
訪問 http://localhost:6602/hello?name=czb1n 會顯示:
fallback function: hello czb1n.
hystrix還提供了乙個資料指標面板工具,hystrixdashboard。不過這個工具沒有在hystrix包裡,需要另外匯入。
>
>
org.springframework.cloudgroupid
>
>
spring-cloud-starter-netflix-hystrix-dashboardartifactid
>
dependency
>
management
:endpoints
:web
:exposure
:include
: hystrix.stream
啟動訪問http://localhost:6602/actuator/hystrix.stream 就可以看到指標資料。
訪問 http://localhost:6602/hystrix 就能開啟hystrixdashboard的介面。輸入上述的stream就能監控對應的指標。
均來自springcloudnetflix官方文件
SpringCloud學習之eureka集群配置
如果是單節點的註冊中心,是無法保證系統穩定性的,當然現在專案部署架構不可能是單節點的。集群節點的部署思路 通過執行多個例項並請求他們相互註冊,來完成註冊中心的高可用性 結伴註冊 注意 用於本機模擬的前期準備工作 將電腦上hosts 新增如下配置 linux下位置 etc hosts 127.0.0....
SpringCloud學習之Ribbon使用(四)
1 關於 ribbon spring cloud ribbon 是基於 netflix ribbon 實現的一套客戶端負載均衡的工具。ribbon 是 netflix 發布的開源專案,主要功能是提供客戶端的軟體負載均衡演算法,將 netflix 的中間層服務連線在一起。ribbon 客戶端元件提供一...
SpringCloud 學習之概述
spring cloud是乙個基於spring boot實現的雲應用開發工具,它為基於jvm的雲應用開發中涉及的配置管理 服務發現 斷路器 智慧型路由 微 控制匯流排 全域性鎖 決策競選 分布式會話和集群狀態管理等操作提供了一種簡單的開發框架。spring cloud並沒有重複製造輪子,它只是將目前...