分布式架构

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

开发工具与关键技术:idea  

作者:吴业华

撰写时间:2021年5月28号

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

   

一、基础环境SpringBoot+SpringCloud

二、SpringCloud基本组件

  1. 注册中心:Eureka
  2. 负载均衡:Ribbon
  3. 声明式调用远程方法:Feign
  4. 熔断、降级、监控:Hystrix
  5. 网关:Zuul

三、ssm-springboot-SpringBoot+SpringCloud集成分布式开发

        

四、SpringBoot+SpringCloud分布式导图

五、创建工程

          spring-clound-parent                  父工程

    spring-cloud-Eureka                   Eureka 注册中心         port: 5000     
        spring-cloud-common                   通用工程               
        spring-cloud-provider                 提供者工程             port: 1000
        spring-cloud-providers                提供者工程             port: 2000     
        spring-cloud-consumer                 消费者工程             port: 4000
        spring-cloud-feign-consumer           远程消费者工程         port: 7000

    spring-cloud-dashboard         监控            port: 8000   http://localhost:8000/hystrix   直接监控链接数据本身:http://localhost:1000/actuator/hystrix.stream

 

六、测试流程

  1. consumer 访问 provider 时使用微 服务名称代替 localhost:1000
  2. spring-cloud-consumer添加ribbon负载均衡
  3. provider、providers 以集群方式启动 port: 1000  port: 2000
  4. consumer正常访问    注意:provider 的微服务名称必须使用同一个名称才能构成一个集群,否则将不会认定为是属于同一个集群。如果我们把providers停掉,consumer就只会访问provider工程
  5. Hytrix
  1. 分布式系统面临的问题
在微服务架构体系下,服务间的调用错综复杂,交织成一张大网。如果其中某个节 点突然无法正常工作,则访问它的众多服务都会被卡住,进而有更多服务被卡住,系统 中的线程、CPU、内存等资源有可能被迅速耗尽,最终整个服务体系崩溃。 我们管这样的现象叫服务雪崩
  1. Hytrix 介绍
Hystrix 是一个用于处理分布式系统的延迟和容错的开源库,在分布式系统里,许多 依赖不可避免的会调用失败,比如超时、异常等,Hystrix 能够保证在一个依赖出问题的 情况下,不会导致整体服务失败,避免级联故障,以提高分布式系统的弹性。
“断路器”本身是一种开关装置,当某个服务单元发生故障之后,通过断路器的故 障监控(类似熔断保险丝),向调用方返回一个符合预期的、可处理的备选响应 (FallBack),而不是长时间的等待或者抛出调用方无法处理的异常,这样就保证了服务调用方的线程不会被长时间、不必要地占用,从而避免了故障在分布式系统中的蔓延, 乃至雪崩。 Hytrix 能够提供服务降级、服务熔断、服务限流、接近实时的监控等方面的功能。
 
  1. 服务熔断机制
熔断机制是应对雪崩效应的一种微服务链路保护机制。 当扇出链路的某个微服务不可用或者响应时间太长时,会进行服务的降级,进而熔断该 节点微服务的调用,快速响应错误信息。当检测到该节点微服务调用响应正常后恢复调用链 路。在 SpringCloud 框架里熔断机制通过 Hystrix 实现。Hystrix 会监控微服务间调用的状况, 当失败的调用到一定阈值,缺省是 5 秒内 20 次调用失败就会启动熔断机制。
    6. spring-cloud-feign-consumer         引入我们的公共工程,http://localhost:7000/feign/consumer/test/fallback?signal=slow-bang               服务降级
spring-cloud-dashboard     监控
启动监控仪表盘http://localhost:8000/hystrix再复制链接数据本身查看  直接监控链接数据本身:http://localhost:1000/actuator/hystrix.stream

本次作品为学习尚硅谷课程尚筹网

 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值