• SpringCloud五大组件


      springcloud是springboot的超集,是微服务的全家桶。通过springcloud可以实现中小企业的快速部署。

      springcloud项目是多个独立的子项目集合而成,所以它的版本管理比较特殊,版本名使用字母排序。

            如果使用springboot 2.0以上版本,我们应该使用springcloud F版本。

            接着介绍下它的常用五个组件:

           (1)服务发现-- Netflix Eureka

         由两个组件组成:Eureka服务端和Eureka客户端

                   Eureka服务端用作服务注册中心,支持集群部署

                   Eureka客户端是一个java客户端,用来处理服务注册与发现。

                   工作原理: 在应用启动时,Eureka客户端向服务端注册自己的服务信息,同时将服务端的服务信息缓存到本地。客户端会和服务端进行周期性的进行心跳交互进行更新服务信息。

             (2)  客户端负载均衡 -- Netflix Ribbon

        提供客户端的软件负载均衡算法。它基于Http和Tcp的客户端负载均衡,使得面向REST请求时变换为客户端的负载服务调用。

             (3) 熔断器 -- Netflix Hystrix

                   作用:断路器,保护系统,控制故障范围。为了保证高可用,单个服务通常会集群部署。当网络或者其他原因导致单个服务出现问题,调用这个服务就会出现线程阻塞,此时如果大量请求进入,Servlet容器的线程资源就会消耗完毕,最终导致服务瘫痪。服务与服务之间的依赖,故障会传播,对整个微服务框架造成灾难性的严重后果,这个就是服务故障的“雪崩”效应。

            (4)服务网关--Netflix Zuul

        作用:api网关,路由,负载均衡等作用

                  类型Nginx 和F5,可以实现反向代理。

                 在微服务架构中,后端服务往往不直接暴露给前端,而是通过一个Api网关根据请求的Url,路由到响应的服务(MVC机制)。当添加Api网关后,在第三方调用端和服务提供方之间就创建了一面墙,这面墙直接与调用方进行通信进行权限控制。后将请求均衡分发给后台服务端。

              (5) 分布式配置 -- Spring Cloud Config

        作用:配置管理

                  提供服务端和客户端,服务器存储后端的默认实现使用git,因此它轻松支持标签版本的配置环境。Config是静态配置的。

                 如果需要动态配置,可以使用spring cloud bus进行动态配置更新。

    参考:https://baijiahao.baidu.com/s?id=1621651597363566701&wfr=spider&for=pc

  • 相关阅读:
    sum left join 多次引发的问题
    WPF之Binding基础三 Binding的路径Path
    解决Android Studio启动不了的办法
    指向常量的指针和常量指针的区别简单理解
    简单的字符串操作
    QT问答
    log4qt使用示例
    在线代码库
    Qt5的windows开放环境准备
    QT 调试技术
  • 原文地址:https://www.cnblogs.com/wangyu19900123/p/12522921.html
Copyright © 2020-2023  润新知