spring cloud: Hystrix:Hystrix的断容器监控dashboard
Posted 穆晟铭
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了spring cloud: Hystrix:Hystrix的断容器监控dashboard相关的知识,希望对你有一定的参考价值。
Hystrix的断容器监控dashboard。
dashboard是用来监控Hystrix的断容器监控的,图形化dashboard是如何实现指标的收集展示的。
dashboard
本地端口8730
项目地址:http://localhost:8730/hystrix
在Pom.xml文件引入:
<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-hystrix-dashboard</artifactId> </dependency>
在入口文件开启注解
@SpringBootApplication
@EnableHystrixDashboard @SpringBootApplication public class FeignApp { public static void main(String[] args) { SpringApplication.run(FeignApp.class, args); } }
然后运行,http://localhost:8730/hystrix
Hystrix
本项目地址:http://192.168.1.6:8010
pom.xml加入hystrix引入
<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-hystrix</artifactId> </dependency>
入口文件引入hystrix注解
@EnableCircuitBreake
@EnableEurekaClient @SpringBootApplication //hystrix @EnableCircuitBreaker public class HystrixApplication { //ribbon @Bean @LoadBalanced public RestTemplate restTemplate() { return new RestTemplate(); } public static void main(String[] args) { SpringApplication.run(HystrixApplication.class, args); } }
Controller文件调用hystrix
@HystrixCommand(fallbackMethod = "notfindback", commandProperties=@HystrixProperty(name="execution.isolation.strategy", value="SEMAPHORE") )
其中fallbackMethod 方法是回退,当网络不通,或者无法访问时访问:notfindback方法,返回默认值
commandProperties是合并线程
@RestController public class MovieController { @Autowired private RestTemplate restTemplate; @GetMapping("/movie/{id}") @HystrixCommand(fallbackMethod = "notfindback", commandProperties=@HystrixProperty(name="execution.isolation.strategy", value="SEMAPHORE") ) public User findById(@PathVariable Long id) { //http://localhost:7900/simple/ return restTemplate.getForObject("http://spring-boot-user/simple/" + id, User.class); } public User notfindback(Long id) { User user = new User(); user.setId(0L); return user; } }
访问:
http://192.168.1.6:8010/movie/1
查看hystrix.stream信息
http://192.168.1.6:8010/hystrix.stream
dashboard监控http://192.168.1.6:8010/hystrix.stream信息
在http://localhost:8730/hystrix中输入要监控的hystrix.stream
如下
每当我刷新:http://192.168.1.6:8010/movie/1数据时,http://localhost:8730/hystrix/monitor?stream=http%3A%2F%2F192.168.1.6%3A8010%2Fhystrix.stream 的指示图就发生变化
以上是关于spring cloud: Hystrix:Hystrix的断容器监控dashboard的主要内容,如果未能解决你的问题,请参考以下文章
Spring Cloud总结22.Hystrix Dashboard的使用(上)
spring-boot-starter-actuator 与 hystrix-servo-metrics-publisher 冲突