![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
SpringCloud
文章平均质量分 95
pigpigpi
这个作者很懒,什么都没留下…
展开
-
SpringCloud进阶-GateWay新一代服务网关
本文主要对GateWay新一代服务网关进行总结是什么:Cloud全家桶中有个很重要的组件就是网关,在1.x版本中都是采用网关。但在2.x版本中,zuul升级一直跳票,SpringCloud最后自己研发了一个网关替代zuul,就是Spring Cloud GateWay。GateWay是在spring生态系统之上构建的API服务网关,基于spring5,Spring Boot2和Project Reactor技术。GateWay旨在提供一种简单而有效的方式来对API进行路由,以及提供一些强大的过滤器功能,例如原创 2022-07-14 13:33:23 · 424 阅读 · 1 评论 -
SpringCloud进阶-服务监控hystrixDashboard
本文主要对服务监控hystrixDashboard进行总结除了隔离依赖服务的调用以外,Hystrix还提供了准实时的调用监控(Hystrix Dashboard),Hystrix会持续地记录所有通过Hystrix发起的请求的执行信息,并以统计报表和图形的形式展示给用户,包括每秒执行多少请求多少成功,多少失败等。Netflix通过hystrix-metrics-event-stream项目实现了对以上指标的监控。Spring Cloud也提供了Hystrix Dashboard的整合,对监控内容转化成可视化界原创 2022-07-12 18:08:22 · 281 阅读 · 0 评论 -
SpringCloud进阶-Hystrix的熔断机制+Hystrix的工作流程
本文主要对SpringCloud中的Hystrix的熔断进行总结断路器:一句话就是家里的保险丝熔断机制概述:熔断机制是应对雪崩效应的一种微服务链路保护机制,当扇出链路的某个微服务出错不可用或者响应时间太长时,会进行服务的降级,进而熔断该节点微服务的调用,快速返回错误的响应信息,当检测到该节点微服务调用响应正常后,恢复调用链路在Spring Cloud框架里,熔断机制通过Hystrix实现。Hystrix会监控微服务间调用的状况,当失败的调用到一定阈值,缺省是5秒内20次调用失败,就会启动熔断机制。熔断机制原创 2022-07-12 17:25:41 · 350 阅读 · 0 评论 -
SpringCloud进阶-Hystrix的服务降级
本文主要对Hystrix的服务降级进行总结关键字:1.1 8001 fallback业务类启用:@HystrixCommand报异常后如何处理?一旦调用服务方法失败并抛出了错误信息后,会自动调用@HystrixCommand标注好的fallbackMethod指定的方法。8001 service8001 service上图故意制造两个异常:当前服务不可用了,做服务降级,兜底的方案都是 paymentInfo_TimeOutHandler测试:给主启动类添加注解后再测试1、没有异常时,原创 2022-07-12 16:52:24 · 619 阅读 · 1 评论 -
SpringCloud进阶-初识Hystrix 断路器+高并发测试
本文主要对Hystrix 断路器进行总结复杂分布式体系结构中的应用程序有数十个依赖关系,每个依赖关系在某些时候将不可避免地失败服务雪崩:多个微服务之间调用的时候,假设微服务A调用微服务B和微服务C,微服务B和微服务C又调用其它的微服务,这就是所谓的“扇出”,如果扇出的链路上某个微服务的调用响应时间过长或者不可用,对微服务A的调用就会占用越来越多的系统资源,进而引起系统崩溃,所谓的“雪崩效应”对于高流量的应用来说,单一的后端依赖可能会导致所有服务器上的所有资源都在几秒钟内饱和,比失败更糟糕的是,这些应用程原创 2022-07-08 14:19:14 · 241 阅读 · 1 评论 -
SpringCloud进阶-OpenFeign 服务接口调用
本文主要对OpenFeign 服务接口调用进行总结官网解释:Feign是一个声明式WebService客户端,使用Feign能让编写Web Service客户端更加简单,它的使用方法是定义一个服务接口然后在上面添加注解,Feign也支持可拔插式的编码器和解码器,Spring Cloud对Feign进行了封装,使其支持了Spring MVC标准注解和HttpMessageConverters,Feign可以与Eureka和Ribbon组合使用以支持负载均衡Feign是一个声明式的Web服务客户端,让编写We原创 2022-07-07 20:47:43 · 326 阅读 · 0 评论 -
SpringCloud进阶-Ribbon负载均衡服务调用
本文主要对Ribbon负载均衡服务调用进行总结LB负载均衡(Load Balance)是什么?Ribbon是什么:能干嘛:Ribbon本地负载均衡客户端 VS Nginx服务端负载均衡的区别:集中式LB:进程内LB:2、案例前面我们讲解过了80通过轮询负载访问8001/8002【详情见eureka】刷新后(负载均衡):一句话总结:负载均衡+RestTemplate调用Ribbon在工作时分成两步:第一步先选择 EurekaServer ,它优先选择在同一个区域内负载较少的ser原创 2022-07-07 16:39:02 · 193 阅读 · 0 评论 -
SpringCloud进阶-Consul服务注册与发现
本文主要对Consul服务注册与发现进行总结是什么:Consul是一套开源的分布式服务发现和配置管理系统,由HashCorp公司用go语言开发。它提供了微服务系统中的服务治理、配置中心、控制总线等功能。这些功能中的每一个都可以根据需要单独使用,也可以一起使用构建全方位的服务网格,总之Consul提供了一种完整的服务网格解决方案。能干嘛:1.服务发现:提供HTTP和DNS两种发现方式2.健康检测:支持多种方式,HTTP、TCP、Docker、Shell脚本定制化3.KV存储:Key、Value的存储方原创 2022-07-07 11:55:22 · 471 阅读 · 0 评论 -
SpringCloud进阶-Zookeeper服务注册与发现
本文主要对Zookeeper服务注册与发现进行总结2.从官网下载官网地址:zookeeper官网:zookeeper将 安装包解压到 中即可解压完之后, ⽬录中会出现⼀个 的⽬录这⾥直接在 ⽬录中创建⼀个 ⽬录等下该 ⽬录地址要配到 的配置⽂件中:进⼊到 zookeeper 的 conf ⽬录,复制 zoo_sample.cfg 得到 zoo.cfg :修改配置⽂件 ,将其中的修改为上⾯刚创建的⽬录,其他选项可以按需配置启动后可以通过如下命令来检查启动后的状态:原创 2022-07-07 10:18:14 · 390 阅读 · 2 评论 -
SpringCloud进阶-负载均衡+actuator微服务信息完善+服务发现Discovery + Eureka的自我保护
本文主要对Eureka的actuator微服务信息完善和服务发现做总结如上文所示,改写OrderController的内容此时再测试:这又是什么情况?现在注册中心不再是暴露出具体的端口号,而是微服务名称 CLOUD-PAYMENT-SERVICE,但是这个微服务名称代表的集群中有很多个,比如8001、8002…用哪个,它并不知道我们需要再配置一下负载均衡@LoadBalanced 注解赋予 RestTemplate 负载均衡的能力cloud-consumer-order801.2 测试第一次原创 2022-07-05 15:26:25 · 142 阅读 · 0 评论 -
SpringCloud进阶-Eureka的集群搭建
本文主要对Eureka的集群搭建进行总结问题:微服务RPC远程服务调用最核心的是什么?高可用,试想你的注册中心只有一个only one, 它出故障了那就呵呵( ̄▽ ̄)"了,会导致整个为服务环境不可用,所以解决办法:搭建Eureka注册中心集群 ,实现负载均衡+故障容错参考cloud-eureka-server7001,新建cloud-eureka-server7002父工程会默认将当前创建的项目依赖引入父工程的pom文件:2.3 修改映射配置找到C:\Windows\System32\driver原创 2022-07-05 13:53:15 · 333 阅读 · 1 评论 -
SpringCloud进阶-Eureka基础知识与搭建单机Eureka
本文主要对SpringCloud的Eureka进行总结Spring Cloud封装了Netflix公司开发的Eureka模块来实现服务治理。在传统的rpc远程调用框架中,管理每个服务之间的依赖关系比较复杂,所以需要服务治理,管理服务与服务之间的依赖关系,可以实现服务调用、负载均衡、容错等,实现服务发现与注册。 包含两个组件: 和1.5 Eureka Client二、单机Eureka构建步骤2.1 IDEA生成EurekaServer端服务注册中心1、建module2、改pom3、原创 2022-07-04 18:16:44 · 213 阅读 · 0 评论 -
SpringCloud进阶-消费者模块 +工程重构
3、application.ymlapplication.yml:4、主启动类5、业务类1、实体类需要使用,entities:2、消费者需要一个controller即可3、RestTemplate1、新建一个ApplicationContextConfig类,在config包下2、修改ApplicationContextConfig类3、在OrderController里使用4、测试启动8001和80,2、开启Run DashBoard原创 2022-07-02 00:48:33 · 232 阅读 · 0 评论 -
SpringCloud进阶-搭建基本环境
之前已经学习过SpringCloud的一些知识,本文将在原来的基础上对SpringCloud进阶学习3、复习DependencyManagement和Dependencies1.建名为cloud-provider-payment8001的Maven工程2.改POM3.写YML4.主启动2、支付模块构建(中)5.业务类SQL:Entities:实体类Payment:JSON封装体CommonResult:DAO:接口PaymentDao:MyBatis映射文件PaymentM原创 2022-06-26 13:35:50 · 321 阅读 · 0 评论