spring cloud
文章平均质量分 60
spring cloud
Chris_Chris_
梦想架构师
展开
-
spring cloud服务注册与发现
spring cloudEurekaeureka客户端eureka服务端使用ribbon负载均衡Hystrix熔断器Eureka分布式微服务架构中,服务注册中心用于存储服务提供者地址信息、服务发布相关的属性信息,消费者 通过主动查询和被动通知的方式获取服务提供者的地址信息,消费者只需要知道当前系统发布了那些服务,而不需要知道服务具体存在于什么位置。服务端:eureka注册中心,需要创建工程,引入服务端jar客户端:服务提供者和消费者对于,eureka来说都是客户端,提供者和消费者向eureka注册自原创 2020-11-11 02:02:26 · 122 阅读 · 0 评论 -
spring cloud使用Hystrix
Hystrix熔断器包裹请求:使用HystrixCommand包裹对依赖的调用逻辑。跳闸机制:当某服务的错误率超过一定的阈值时,Hystrix可以跳闸,停止请求该服务一段时间。资源隔离:Hystrix为每个依赖都维护了一个小型的线程池(舱壁模式)(或者信号量)。如果该线程 池已满, 发往该依赖的请求就被立即拒绝,而不是排队等待,从而加速失败判定。监控:Hystrix可以近乎实时地监控运行指标和配置的变化,例如成功、失败、超时、以及被拒绝 的请求等。回退机制:当请求失败、超时、被拒绝,或当断路器打开原创 2021-04-30 14:28:22 · 169 阅读 · 0 评论 -
spring cloud使用ribbon
使用ribbon负载均衡注入RestTemplate的时候加注解@LoadBalanced@Bean@LoadBalancedpublic RestTemplate getRestTemplate() { return new RestTemplate();}@GetMapping("/checkState/{userId}")public Integer findResumeOpenState(@PathVariable Long userId) { String url = "原创 2021-04-30 14:27:52 · 125 阅读 · 0 评论 -
spring cloud 源码 feign
feign源码进入启动类上的@EnableFeignClients进入org.springframework.cloud.openfeign.EnableFeignClients@Retention(RetentionPolicy.RUNTIME)@Target(ElementType.TYPE)@Documented@Import(FeignClientsRegistrar.class)public @interface EnableFeignClients {}进入org.spri原创 2021-04-30 10:52:06 · 79 阅读 · 0 评论 -
spring cloud 源码 Hystrix
Hystrix源码入口@EnableCircuitBreaker注解@Target(ElementType.TYPE)@Retention(RetentionPolicy.RUNTIME)@Documented@Inherited//导入断路器导入选择器@Import(EnableCircuitBreakerImportSelector.class)public @interface EnableCircuitBreaker {}进入org.springframework.cloud原创 2021-04-30 10:51:15 · 310 阅读 · 0 评论 -
spring cloud 源码 Ribbon
Ribbon负载均衡策略spring cloud是基于springboot的框架,它会加载每个包里面的spring.factories中的类相关组件IRule:是在选择实例的时候的负载均衡策略对象IPing:是用来向服务发起心跳检测的,通过心跳检测来判断该服务是否可用 ServerListFilter:根据一些规则过滤传入的服务实例列表ServerListUpdater:定义了一系列的对服务列表的更新操作@LoadBalanced注解//被这个注解标记的RestTemplate bean会被L原创 2021-04-30 10:25:39 · 127 阅读 · 0 评论 -
spring cloud 源码 EurekaClient
EurekaClientspring cloud是基于springboot的框架,它会加载每个包里面的spring.factories中的类EurekaClient服务注册找到spring.factories的org.springframework.cloud.netflix.eureka.EurekaClientAutoConfiguration依然使用SpringBoot的自动装配进入org.springframework.cloud.netflix.eureka.EurekaClientA原创 2021-04-30 10:19:57 · 86 阅读 · 0 评论 -
spring cloud 源码 EurekaServer
spring cloudEurekaServer启动过程Eureka Server服务接口暴露springboot启动时会去根目录下的META-INF/spring.factories文件中扫描文件里面配置好的类并加载,springcloud利用了SpringBoot的这一个特点打开eureka-server的jar包找到META-INF/spring.factories配置文件SpringBoot启动时会自动加载org.springframework.cloud.netflix.eureka.se原创 2021-01-13 20:36:55 · 163 阅读 · 0 评论 -
spring cloud使用Gateway
gateway路由GateWay不需要使用web模块,它引入的是WebFlux(类似于SpringMVC)新建路由项目然后导入maven<!--spring boot 父启动器依赖--><parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <v原创 2021-04-30 14:30:02 · 202 阅读 · 0 评论 -
spring cloud使用Feign
feign远程调用组件Feign是Netflix开发的一个轻量级RESTful的HTTP服务客户端(用它来发起请求,远程调用的),是以 Java接口注解的方式调用Http请求,而不用像Java中通过封装HTTP请求报文的方式直接调用,Feign被 广泛应用在Spring Cloud 的解决方案中。它封装了http调用流程。Feign = RestTemplate+Ribbon+Hystrix使用feign:引入依赖的jar包<dependencies> <!--eureka原创 2021-04-30 14:29:12 · 164 阅读 · 0 评论