터빈은 서버가 이벤트 스트림 데이터를 보내도록 집계하는 도구입니다. Hystrix 모니터링에서는 단일 노드 만 모니터링 할 수 있으며 실제 생산에서는 클러스터입니다. 따라서 터빈은 클러스터에서 Hystrix의 지표를 모니터링하는 데 사용될 수 있으며 Eureka를 통해 Hystrix 서비스를 발견 할 수 있습니다.
새로운 터빈 프로젝트를 만듭니다
TurbineApplication.java
패키지 터빈; import org.springframework.boot.springApplication; import org.springframework.boot.autoconfigure.springbootApplication; import org.springframework.cloud.netflix.hystrix.enableHyStrix; 가져 오기 org.springframework.cloud.netflix.hystrix.dashboard.enableHyStrixDashboard; import org.springframework.cloud.netflix.turbine.enableturbine;/*** Sai.luo가 2017/4/26에 작성했습니다. */@springbootApplication@enableTurbine@enableHyStrix@enableHyStrixDashBoardPublic Class TurbineApplication {public static void main (String [] args) {SpringApplication.Run (TurbineApplication.class, args); }}pom.xml
<? xml version = "1.0"encoding = "utf-8"?> <project xmlns = "http://maven.apache.org/pom/4.0.0"xmlns : xsi = "http://www.w3.org/2001/xmlschema-instance" xsi : schemalocation = "http://maven.apache.org/pom/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modeversion> 4.0.0 </modelversion> <ArtifactId> Turbine </artifactives> <project.build.sourceencoding> utf-8 </project.build.sourceencoding> <java.version> 1.8 </java.version> </properties> <부모> <groupid> org.springframework.spramework.spramework.spramework.spramewort </artifactic-parent> <버전> 1.5.2. release </version> <aperativePath/> <!-저장소에서의 모방 부모-> </parent> <pectionies> <!-hystrix 종속성-> <pectionency> <groupid> org.spramework.cloud </groupid> <artifactid> spring-cloud-starter-hystrix </expence> <groupid> org.springframework.cloud </groupid> <artifactid> spring-cloud-starter-hystrix-dashboard </artifactid> </eppendency> <!-turnbine 종속성-> <pecientency> <groupid> org.springframwork.cloud </groupid> </eptivactid> spring-cloud-strubine> </dependency> </dependency> <pectionencymanagement> <pectionency> <pectionement> <groupId> org.springframework.cloud </groupId> <artifactid> spring-cloud-dependencies </artifactid> <bersion> camden.sr5 </version> <type> pom </type> </scope> </dependency> </dependency> </dependency> </fectionencymanagement> <빌드> <플러그인> <플러그인> <groupid> org.springframework.boot </groupid> <artifactid> spring-boot-maven-plugin </artifactid> </plugin> </plugins> </build> </project>
application.yml
Spring : Application : Name : Port : 8000Turbine : App-Config : Hello, HelloClient ## 모니터링 해야하는 서비스 이름 : ClusterConfig : Main ## 서비스 클러스터 이름 ClusternameExpression : MATADATA [ 'Cluster'] EUREKA : 인스턴스 : PLERESTIPADDRESS : /INFO.HTML : /info.HTOURL : /info.Html : /info.HtMl : /infoAddress : /info.html : /infoaturless : /info.html : /inforturless : /inferaturless : /info.html : /info. DefaultZone : http : // localhost : 8761/eureka/
서비스를 시작하십시오
HelloServiceeureka Project Application.yml은 클러스터 구성을 추가합니다
변경
스프링 : 응용 : 이름 : Helloserver : Port : 9001eureka : 인스턴스 : 임대-renewal-interval-in-seconds : 3 임대-발행-기간-5 메타 데이터 맵 : 클러스터 : 메인 클라이언트 : ServiceUrl : defaultZone : http : // localhost : 8761/eureka/registry-interval-seconds : Netflix : Eureka : Off Discovery : Off
pom.xml은 Hystrix 종속성 패키지를 추가합니다
<pectionency> <groupid> org.springframework.cloud </groupid> <artifactid> Spring-Cloud-Starter-Hystrix </artifactid> </fectionency>
마찬가지로 Ribboneureka Project Application.yml은 클러스터 구성을 추가합니다
변경 후 다음
스프링 : 응용 : 이름 : HelloClientserver : Port : 200000eureka : 인스턴스 : 임대-renewal-interval-in-seconds : 3 임대-발행 시간-5 메타 데이터-맵 : 클러스터 : 메인 클라이언트 : ServiceUrl : DefaultZone : http : // localhost : 8761/eureka/registry-interval-seconds : 3logeconds : Netflix : Eureka : Off Discovery : Off
pom.xml은 Hystrix 종속성 패키지를 추가합니다
RibboneurekaApplication.java 주석을 추가하십시오
@enableHyStrix
프로젝트를 시작하십시오
페이지를 보려면 LocalHost : 8000/hystrixx를 방문하십시오
참고 : 터빈은 Hystrix 서비스가 아닌 Hystrix 서비스 만 모니터링 할 수 있으며 모니터링 할 수 없습니다. 예를 들어 Hello 서비스는 클러스터로 구성되어 있지만 Hystrix를 사용하지 않으므로 모니터링되지 않습니다.
프로젝트 주소 https://github.com/luosai001/spring-cloud-sample/tree/master
위는이 기사의 모든 내용입니다. 모든 사람의 학습에 도움이되기를 바랍니다. 모든 사람이 wulin.com을 더 지원하기를 바랍니다.