springcloud(八):Turbine的應(yīng)用-創(chuàng)新互聯(lián)

1、概念

讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來自于我們對這個(gè)行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價(jià)值的長期合作伙伴,公司提供的服務(wù)項(xiàng)目有:主機(jī)域名、網(wǎng)站空間、營銷軟件、網(wǎng)站建設(shè)、水城網(wǎng)站維護(hù)、網(wǎng)站推廣。

Turbine 是聚合服務(wù)器發(fā)送事件流數(shù)據(jù)的一個(gè)工具,用來監(jiān)控集群下 hystrix 的 metrics 情況。

2、引入依賴

   <dependency>      

       <groupId>org.springframework.cloud</groupId>      

      <artifactId>spring-cloud-netflix-turbine</artifactId>    

     </dependency>

3、創(chuàng)建應(yīng)用

       TurbineApplication

       @SpringBootApplication

       @EnableTurbine

       public class TurbineApplication {

         public static void main(String[] args) {

           new SpringApplicationBuilder(TurbineApplication.class).web(true).run(args);

         }

       }

4、對應(yīng)配置信息

           server.port=8031

           spring.application.name=turbine

           turbine.appConfig=app01,app02

           turbine.aggregator.clusterConfig= app

           turbine.clusterNameExpression= metadata['cluster']

 turbine.appConfig 配置需要聚合的應(yīng)用 
   turbine.aggregator.clusterConfig turbine需要聚合的集群名稱 通過 http://localhost:8031/turbine.stream?cluster=app 訪問 
   turbine.clusterNameExpression 獲取集群名表達(dá)式,這里表示獲取元數(shù)據(jù)中的cluster數(shù)據(jù),在app01、app02為配置對應(yīng)信息

5、創(chuàng)建EurekaServer服務(wù)

6、創(chuàng)建應(yīng)用app01 

       @Configuration

       @EnableAutoConfiguration

       @EnableDiscoveryClient

       @EnableCircuitBreaker

       @RestController

       public class App01 {

       public static void main(String[] args) {

       SpringApplication.run(App01.class, args);

       }

       @Autowired

       private HelloService service;

       @RequestMapping("/")

       

       public String hello() {

       return this.service.hello();

       }

       @Component

       public static class HelloService {

       @HystrixCommand(fallbackMethod = "fallback")

       public String hello() {

       return "Hello World";

       }

       public String fallback() {

       return "Fallback";

       }

       }

       }

對應(yīng)配置:

        server.port= 8091 
          spring.application.name=app01 
          eureka.instance.hostname=localhost 
          eureka.instance.metadata-map.cluster=app

7、創(chuàng)建應(yīng)用app02

      對應(yīng)配置:

          server.port= 8092 
          spring.application.name=app02
          eureka.instance.hostname=localhost 
          eureka.instance.metadata-map.cluster=app

8、三個(gè)應(yīng)用同時(shí)注冊到EurekaServer,然后啟動(dòng)大盤服務(wù),在大盤服務(wù)里面輸入http://localhost:9031/turbine.stream?cluster=app得到監(jiān)控界面;

9、監(jiān)控界面的各個(gè)指標(biāo)的含義

  1. 圓形顏色和大小:代表健康情況和流量

  2. 折線:2分鐘內(nèi)的吞吐率變化情況

  3. hosts:集群中節(jié)點(diǎn)個(gè)數(shù)

  4. median: 每個(gè)請求時(shí)間的中位數(shù)

  5. mean: 平均每個(gè)請求消耗的時(shí)間

  6. subscriberGetAccount: 
    綠200545:代表成功請求數(shù)量 
    藍(lán)0:代表斷路數(shù)量 
    黃19:代表表超時(shí)的線程數(shù)量 
    紫94:代表線程池拒絕次數(shù),即線程不夠用 
    紅0: 失敗或異常數(shù)量 
    灰0%: 最后10秒錯(cuò)誤率

  7. host: 各節(jié)點(diǎn)每秒的平均請求吞吐量

  8. cluster: 集群每秒的請求吞吐量

  9. circuit:代表斷路器狀態(tài)即:是否打開斷路器 90th,99th,99.5th: 
    最后1分鐘各種延遲的百分比。如圖:90%的請求小于10ms;而99%的請求小于44ms,99.5%的請求在61ms完成。

10、總結(jié)

通過turbine可以監(jiān)控集群的請求量,可以知道系統(tǒng)的請求高峰期,從而更好的知道系統(tǒng)的短板在哪里

網(wǎng)站標(biāo)題:springcloud(八):Turbine的應(yīng)用-創(chuàng)新互聯(lián)
瀏覽地址:http://www.muchs.cn/article24/ddedce.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站內(nèi)鏈、商城網(wǎng)站服務(wù)器托管、云服務(wù)器、微信小程序、網(wǎng)站收錄

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

h5響應(yīng)式網(wǎng)站建設(shè)