hystrix 页面_《SpringCloud微服务之Hystrix组件》
Hystrix
断路器:避免了服务雪崩的问题。
在分布式系统中,服务与服务之间的相互依赖调用错综复杂
可能出现某个服务因为一些异常或者调用超时
从而长时间线程阻塞,导致整个系统出现雪崩问题。
Hystrix提供了熔断器的功能,执行fallback方法,快速返回一个友好提示,这样可以避免长时间线程阻塞(这种叫做服务降级)
Hystrix有什么功能?
防雪崩(整个调用链路被拖垮),具备服务降级,服务熔断,依赖隔离,监控(Hystrix Dashboard)
什么是服务熔断? 什么是服务降级? https://blog.csdn.net/qq_37312838/article/details/82966209
服务降级是服务内部出现异常,每个请求都会触发服务降级,执行fallback方法,返回一个友好提示
服务熔断是具有周期性的,在一定时间内,服务请求失败次数达到一个阈值时,会触发熔断打开
熔断打开之后,所有的请求都会执行fallback方法,返回一个有好的提示
一个周期过后,会再次判断是否打开或关闭熔断
我们来实现一个在SpringCloud集成Hystrix,以及访问Hystrix可视化界面案列
spring cloud版本为Greenwich.SR3
spring-boot版本为2.1.9.RELEASE
1.在消费者服务项目工程的pom.xm引入依赖
org.springframework.cloud spring-cloud-starter-netflix-hystrixorg.springframework.cloud spring-cloud-starter-netflix-hystrix-dashboard
2.启动类加上注解
@EnableCircuitBreaker//开启对hystrix熔断机制的支持
@EnableHystrixDashboard//hystrix的可视化界面
3.启动类中加上这个
/**
* hystrix仪表盘
* @return
*/
@Bean
public ServletRegistrationBean getServlet(){
HystrixMetricsStreamServlet streamServlet = new HystrixMetricsStreamServlet();
ServletRegistrationBean registrationBean = new ServletRegistrationBean(streamServlet);
registrationBean.setLoadOnStartup(1);
registrationBean.addUrlMappings("/hystrix.stream");
registrationBean.setName("HystrixMetricsStreamServlet");
return registrationBean;
}
4.在controller层中的方法上加上@HystrixCommand,不然被无法出现仪表盘
5.启动项目,先访问http://localhost:8201/hystrix 8201是消费者服务的端口号
一定要记得使用谷歌浏览器,不用谷歌浏览器简直会把你气死,不用谷歌浏览器不配玩代码
6.特别要注意我第一个框里输入的东西,http://localhost:8201/hystrix后面加了个 .stream, 然后点击按钮
7.去另一个地址栏访问一下带有@HystrixCommand这个注解的接口
比如我访问 http://localhost:8201/dept/list,回到步骤6的那个页面,可以看到
hystrix 页面_《SpringCloud微服务之Hystrix组件》相关推荐
- SpringCloud微服务:Eureka组件之服务注册与发现
一.Eureka基本架构 1.Eureka角色结构图 角色职责如下: 1).Register:服务注册中心,它是一个Eureka Server ,提供服务注册和发现功能. 2).Provider:服务 ...
- SpringCloud微服务架构分布式组件如何共享session对象
参考文章: https://www.cnblogs.com/fengli9998/p/7881331.html https://blog.csdn.net/dsen726/article/detail ...
- hystrix 单独使用_Spring cloud微服务架构-Hystrix工作原理(微服务故障熔断)
流程图 下图显示了通过Hystrix向服务依赖项请求时发生的情况: 以下各节将更详细地说明此流程: 1.构造一个HystrixCommand或HystrixObservableCommand对象 第一 ...
- SpringCloud微服务,euraka、feign、hystrix组件学习
SpringCloud 1 eureka 1.1 eureka基本概念 eureka主要包含两个组件:Eureka Server 和 Eureka Client. eureka server(注册中心 ...
- Spring Cloud构建微服务架构-Hystrix依赖隔离
依赖隔离 "舱壁模式"对于熟悉Docker的读者一定不陌生,Docker通过"舱壁模式"实现进程的隔离,使得容器与容器之间不会互相影响.而Hystrix则使用该 ...
- 学习笔记:SpringCloud 微服务技术栈_实用篇②_黑马旅游案例
若文章内容或图片失效,请留言反馈.部分素材来自网络,若不小心影响到您的利益,请联系博主删除. 前言 学习视频链接 SpringCloud + RabbitMQ + Docker + Redis + 搜 ...
- Java服务超时保护_五、服务保护-Hystrix
服务之间的调用,很有可能会遇到服务之间调用超时的情况,此时我们可以用到一个很好用的技术:Hystrix.具体可以了解我的该标签下得第二篇博文二.SpringCloud微服务架构, 一.背景 在一个分布 ...
- Spring Cloud构建微服务架构-Hystrix断路器
断路器 断路器模式源于Martin Fowler的Circuit Breaker一文."断路器"本身是一种开关装置,用于在电路上保护线路过载,当线路中有电器发生短路时," ...
- 学习笔记:SpringCloud 微服务技术栈_实用篇①_基础知识
若文章内容或图片失效,请留言反馈.部分素材来自网络,若不小心影响到您的利益,请联系博主删除. 前言 学习视频链接 SpringCloud + RabbitMQ + Docker + Redis + 搜 ...
最新文章
- 最新开源Faster-LIO:快速激光IMU里程计
- Javascript中的深拷贝和浅拷贝
- [转载]Yacc基础
- Python命令行自动补全和记录历史命令
- Cocos Creator JS 获取当前日期与时间
- zabbix 4.2官方自动监控网络服务端口脚本
- 66. 查询分页数据
- windows下客户端连接上马上会断开连接_zookeeper系列客户端的骚操作amp; Curator使用...
- mojoportal学习——文章翻译之使用Artisteer快捷的创建模板
- E-prime 行为实验设计
- 公式经纬度换算度分秒,度分秒换算经纬度
- 人生八境——古诗词中读懂人生境界
- linux 安装与卸载ProFTPd
- 巧用TP-LINK无线路由器连接IPv6网络
- 软件开发之版本控制方式
- traceback说明
- Django 之ORM(一)
- XCTF 攻防世界 MISC杂项 高手进阶区
- RDD操作(超详细)
- Linux系统基本知识(4)
热门文章
- community 计算模块度_聚苯乙烯泡沫模块可以用在哪些建筑上?
- 求[100,9999]区间的超级素数,c语言编程,程序中含数组,2010计算机等级考试二级C语言预测题...
- css grid随页面大小_CSS中的间距知识总结,前端开发中各种间距的使用及优缺点
- mac打开chm文件_Mac无法打开TXT文件怎么办?Mac无法打开txt文档的解决方法
- java中fileter用法,Java 8 使用Lambda表达式的FileFilter示例
- java类加载器分类_Java 类加载器的种类
- python 自动化 在日历中选择时间-Python中Selenium选择日期(选择日历控件)的方法...
- java .equal_Java 中的equals()方法
- py导入包异常跳出_14-0-包的介绍及使用
- 交互式python解释器_从python脚本中调用python交互式解释器