写点什么

史上最全 SpringCloud 入门教程,从零开始带你深入♂学习(十

用户头像
极客good
关注
发布于: 刚刚

server:


port: 80


#开启降级 openfeign.hystrix


feign:


hystrix:


enabled: true

加群 1025684353 一起吹水聊天-->

#EurekaClient 配置


eureka:


client:


register-with-eureka: false #不像 eureka 中注册自己


service-url:


defaultZone: http://eureka7001.com:7001/eureka/,http://eureka7002.com:7002/eureka/,http://eureka7003.com:7003/eureka/


[领取资料](


)


[](


)4、运行测试


1、启动 eureka 集群注册中心 springcloud-eureka-7001 和 springcloud-eureka-7002


2、启动服务提供者 springcloud-provider-dept-8001


3、启动消费者 springcloud-consumer-dept-openfeign


[



](


)


4、关闭服务提供者 springcloud-provider-dept-8001


[



](


)


[](


)服务熔断和降级的区别


=========================================================================


  • 服务熔断—>服务端:某个服务超时或异常,引起熔断~,类似于保险丝(自我熔断)

  • 服务降级—>客户端:从整体网站请求负载考虑,当某个服务熔断或者关闭之后,服务将不再被调用,此时在客户端,我们可以准备一个 FallBackFactory ,返回一个默认的值(缺省值)。会导致整体的服务下降,但是好歹能用,比直接挂掉强。

  • 触发原因不太一样,服务熔断一般是某个服务(下游服务)故障引起,而服务降级一般是从整体负荷考虑;管理目标的层次不太一样,熔断其实是一个框架级的处理,每个微服务都需要(无层级之分),而降级一般需要对业务有层级之分(比如降级一般是从最外围服务开始)

  • 实现方式不太一样,服务降级具有代码侵入性(由控制器完成/或自动降级),熔断一般称为自我熔断。


[](


)Dashboard 流监控


============================================================================


Hystrix Dashboard 的一个主要优点是它收集了关于每个 HystrixCommand 的一组度量。Hystrix 仪表板以高效的方式显示每个断路器的运行状况


[](


)1、新建消费者模块 springcloud-sonsumer-hystrix-dashboard


[领取资料](


)


[



](


)


[](


)2、添加相关依赖


<dependencies>


<dependency>


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


<artifactId>spring-cloud-starter-netflix-hystrix</artifactId>


</dependency>


<dependency>


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


<artifactId>spring-cloud-starter-netflix-hystrix-dashboard</artifactId>


</dependency>


<dependency>


<groupId>org.study</groupId>


<artifactId>springcloud-api</artifactId>


<version>1.0-SNAPSHOT</version>


</dependency>


<dependency>


<groupId>org.springframework.boot</groupId>


<artifactId>spring-boot-starter-web</artifactId>


<version>2.3.3.RELEASE</version>


</dependency>


<dependency>


<groupId>org.springframework.boot</groupId>


<artifactId>spring-boot-devtools</artifactId>


<version>2.3.3.RELEASE</version>


</dependency>


<dependency>


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


<artifactId>spring-cloud-starter-netflix-ribbon</artifactId>


</dependency>


<dependency>


<groupId>org.springframew


【一线大厂Java面试题解析+核心总结学习笔记+最新架构讲解视频+实战项目源码讲义】
浏览器打开:qq.cn.hn/FTf 免费领取
复制代码


ork.cloud</groupId>


<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>


</dependency>


</dependencies>


[](


)3、编写 application.yaml 配置文件


server:


port: 9001


hystrix:


dashboard:


proxy-stream-allow-list: localhost


[](


)4、编写主启动类,添加 dashboard 监控注解


package com.study.springcloud;


import org.springframework.boot.SpringApplication;


import org.springframework.boot.autoconfigure.SpringBootApplication;


import org.springframework.cloud.netflix.hystrix.dashboard.EnableHystrixDashboard;


@SpringBootApplication


@EnableHystrixDashboard//开启 dashboard 监控


public class DeptConsumerDashboard_9001 {


public static void main(String[] args) {


SpringApplication.run(DeptConsumerDashboard_9001.class,args);


}


}


[](


)5、检查服务提供者是否都添加监控信息依赖



6、启动测试



7、给要被监控的服务提供者(springcloud-provider-dept-hystrix-8001 模块)下的主启动类添加 hystrix 依赖和监控


领取资料


添加 hystrix 依赖


<dependency>


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


<artifactId>spring-cloud-starter-netflix-hystrix</artifactId>


</dependency>


添加监控


package com.study.springcloud;


import com.netflix.hystrix.contrib.metrics.eventstream.HystrixMetricsStreamServlet;


import org.springframework.boot.SpringApplication;


import org.springframework.boot.autoconfigure.SpringBootApplication;


import org.springframework.boot.web.servlet.ServletRegistrationBean;


import org.springframework.cloud.client.discovery.EnableDiscoveryClient;


import org.springframework.cloud.netflix.eureka.EnableEurekaClient;


import org.springframework.context.annotation.Bean;


//启动类


@SpringBootApplication


@EnableEurekaClient//在服务启动后自动注册到 Eureka 中!

用户头像

极客good

关注

还未添加个人签名 2021.03.18 加入

还未添加个人简介

评论

发布
暂无评论
史上最全 SpringCloud入门教程,从零开始带你深入♂学习(十