![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
springcloud
文章平均质量分 72
云哥Y
技术源于实践,技术改变世界!
展开
-
(八)hystrix-服务熔断和降级
微服务调用链微服务很多的情况下,调用链也会特别长。其中某个服务出现问题,很可能会导致整个微服务不可用。这种情况下,就需要将出现问题的服务隔离开来,就好比现在发现哪里有新冠疫情,就得赶紧隔离,防止传播给其他人。上图中,日志服务调用分析服务,当分析服务不可用时,采取熔断。分析服务可以提供一个备用的机制如返回一个空对象,这就是服务的降级。hystrix提供容错机制,避免微服务系统雪崩。一、手动模拟服务异常还是采用前面几章节的案例,假设用户服务调用订单服务出现异常,这里我手动模拟一个空指针异常,然后使原创 2022-02-08 23:00:41 · 2421 阅读 · 1 评论 -
(七)feign-简化服务调用
前面的章节虽然完成了服务的注册以及相互间的调用,但是调用方发起调用时,还是硬编码的形式,如果服务比较多,代码不好管理。如,用户服务调用订单服务: @PostMapping("/findOrderList") public JSONArray findOrderList() throws Exception { String serviceId = "ORDER"; String url = "http://" + serviceId + "/order/fin原创 2022-02-07 20:24:24 · 1963 阅读 · 0 评论 -
(六)ribbon-客户端负载均衡器的使用
ribbon介绍我们熟悉的nginx它是服务端的负载均衡,而ribbon则是客户端负载均衡。再来看看之前的CloudConfig.java,RestTemplate +@LoadBalanced等价于ribbon。package com.ft.config;import org.springframework.cloud.client.loadbalancer.LoadBalanced;import org.springframework.context.annotation.Bean;im原创 2022-01-24 23:12:13 · 902 阅读 · 0 评论 -
(五)注册中心-eureka的自我保护功能
eureka的自我保护功能进入eureka自我保护功能在上一章已经把用户服务(2个节点)和订单服务(2个节点)注册到了eureka集群中。如下效果图:此时,我如果将用户服务其中一个节点8011断开,过一会看eureka控制台会出现如下图的红色字样,也就是说明eureka进入到了自我保护状态。百度翻译:突发事件EUREKA可能错误地声称实例在未启动时已启动。续订小于阈值,因此实例不会为了安全而过期。我的理解:eureka一旦进入自我保护状态,原来注册的服务节点信息不会被轻易删除,因此用户服务801原创 2022-01-23 23:10:36 · 542 阅读 · 0 评论 -
(四)注册中心-eureka集群部署(集群注册用户服务和订单服务)
前面第三章主要是搭建了eureka的集群部署,还是基于高可用原则,用户服务和订单服务也应该需要集群部署。用户服务的集群部署用户服务的集群部署跟eureka的差不多,只需要将application.yml的port设置为动态参数即可。############################################################## 用户微服务# web访问端口号 约定:8001###########################################原创 2022-01-20 23:46:19 · 618 阅读 · 0 评论 -
(三)注册中心-eureka集群部署(单机注册用户服务和订单服务)
前面第二章提到了eureka的单机模式,为了保证高可用,这张来测试eureka的集群部署,并且还是单机注册用户服务和订单服务。eureka集群部署ApplicationEurekaCluster.java启动类@SpringBootApplication@EnableEurekaServer // 开启注册中心public class ApplicationEurekaCluster { public static void main(String[] args) {原创 2022-01-20 22:45:45 · 759 阅读 · 0 评论 -
(二)注册中心-eureka(单机注册用户服务和订单服务)
部署eureka注册中心ApplicationEureka.java启动类@SpringBootApplication@EnableEurekaServer // 开启注册中心public class ApplicationEureka { public static void main(String[] args) { SpringApplication.run(ApplicationEureka.class, args); }}applicatio原创 2022-01-18 22:05:35 · 456 阅读 · 0 评论 -
(一)注册中心-eureka
生活上的案例我们每个人的身份信息都会在派出所登记。派出所就是一个注册中心,用来记录所有人的身份信息。如果张三需要去拜访李四,那么他需要去派出所拿到李四的家庭地址,然后才能去李四家里。注册中心模型用户服务和订单服务都注册在了注册中心,用户需要去查询他的订单信息,则用户服务会去注册中心获取订单服务地址,然后发起调用。注册中心和订单服务为了保证高可用,都可以设置为集群。订单服务是被调用方,因此属于服务提供方,用户服务是调用方,所以是服务消费方。简单配置1.父工程eureka-parent的pom.x原创 2022-01-16 20:53:43 · 206 阅读 · 0 评论