T
urbine
是聚合服務器發送事件流數據的一個工具,hystrix的監控中,只能監控單個節點,實際生產中都爲集羣,所以能夠經過turbine來監控集羣下hystrix的metrics狀況,經過eureka來發現hystrix服務。spring
新建一個springboot項目springboot-turbinespringboot
pom.xml:服務器
<dependencies> <!-- turbine依賴 --> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-turbine</artifactId> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-netflix-turbine</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-actuator</artifactId> </dependency> </dependencies>
在啓動類上加上註解@EnableTurbineapp
server: port: 8010 spring: application: name: xing-turbine #指定服務名 turbine: aggregator: clusterConfig: default # 指定聚合哪些集羣,多個使用","分割,默認爲default。 appConfig: XING-MOVIE # 配置Eureka中的serviceId列表,代表監控哪些服務 clusterNameExpression: new String("default") eureka: client: registerWithEureka: true #是否將本身註冊到Eureka服務中,默認爲true fetchRegistry: true #是否從Eureka中獲取註冊信息,默認爲true serviceUrl: #Eureka客戶端與Eureka服務端進行交互的地址 defaultZone: http://xing-eurekaServer:8090/eureka/ eurekaServerConnectTimeoutSeconds: 60 eurekaServerReadTimeoutSeconds: 60 instance: prefer-ip-address: true #將本身的ip地址註冊到Eureka服務中 ip-address: 127.0.0.1 instance-id: xing-turbine:8010 #指定實例id lease-expiration-duration-in-seconds: 30 #續約更新時間間隔(默認30秒) lease-renewal-interval-in-seconds: 10 # 續約到期時間(默認90秒) leaseRenewalIntervalInSeconds: 10 #心跳時間 hostname: xing-turbine
啓動項目,訪問http://127.0.0.7:8010/turbine.stream 會看到以下圖相似的界面spring-boot
接着訪問http://127.0.0.1:8081/hystrix ,這是使用了hystrix的電影服務出現Hystrix Dashboard的界面工具
以後會看到這個界面fetch