• 【SpringCloud】Gateway网关、SpringCloud Config配置中心、消息总线BUS以及Spring Cloud Stream


    文章目录

    一、Gateway网关

    API Gateway是一个服务器,也可以说是进入微服务系统的唯一节点,并且提供了API给各个客户端,它还可以有其他功能,如授权、监控、负载均衡、缓存、请求分片和管理、静态响应处理等。
    API Gateway负责请求转发、合成和协议转换。所有来自客户端的请求都会先经过API Gateway,然后负载均衡这些请求到对应的微服务。
    GateWay三大核心概念
    在这里插入图片描述
    具体用法Gateway网关简介及使用
    所需要的依赖

    
        org.springframework.cloud
        spring-cloud-starter-gateway
    
    
    • 1
    • 2
    • 3
    • 4

    只需要一个启动类,gateway的配置文件,application.,yml

    server:
      port: 9527
    spring:
      application:
        name: cloud-gateway
      cloud:
        gateway:
          routes:
            - id: payment_routh #路由的id,没有固定的要求,唯一即可,建议匹配服务名
              uri: http://localhost:8001  #匹配后提供服务的路由地址
              predicates:
                - Path=/payment/get/**  #断言,路径相匹配的进行路由
    
            - id: payment_routh2 #路由的id,没有固定的要求,唯一即可
              uri: http://localhost:8001  #匹配后提供服务的路由地址
              predicates:
                - Path=/payment/lb/**  #断言,路径相匹配的进行路由
    eureka:
      instance:
        hostname: cloud-gateway-service
      client: #将服务提供者注册进eureka中
        service-url:
          register-with-eureka: true
          fetch-registrer: true
          defaultZone: http://eureka7001.com:7001/eureka
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25

    二、分布式配置中心SpringCloud Config

    SpringCloud学习系列之四-----配置中心(Config)使用详解
    在这里插入图片描述
    1.Spring Cloud Config项目是一个解决分布式系统的配置管理方案。包含Client和Server两个部分。
    ① server是一个独立的微服务应用,主要用于管理应用程序下各个环境的配置,默认使用Git、本地或VSN存储,提供配置文件的存储、以接口的形式将配置文件的内容提供出去;
    ② client即各个微服务应用,通过指定的配置中心管理应用资源以及业务相关的配置内容,获取和加载配置信息

    2.SpringCloud Config有什么用?
    SpringCloud Config为微服务架构中的微服务提供集中化的外部配置支持,配置服务器为各个不同微服务应用的所有环境提供了一个中心化的外部配置。
    在这里插入图片描述
    3.如何实现Config的动态刷新?
    在这里插入图片描述
    运维人员使用命令行手动发送post请求,避免client的服务重启。

    三、消息总线(BUS)

    Spring Cloud Bus用来将分布式系统的节点与轻量级消息链接起来的框架,整合了Java的事件处理机制和消息中间件的功能。Spring Cloud Bus目前支持RabbitMQ和Kafka。
    1.什么是总线?
    在微服务架构的系统中,通常会使用轻量级的消息代理来构建一个共用的消息主题,并让系统中所有微服务实例都连接上来。由于该主题中产生的消息会被所有实例监听和消费,所以称它为消息总线。
    Windows下RabbitMQ安装及配置
    2.动态刷新全部客户端(Config Client)
    在这里插入图片描述
    2.定点刷新部分客户端(Config Client)
    在这里插入图片描述

    四、Spring Cloud Stream

    在这里插入图片描述
    1.Spring Cloud Stream是一个构建消息驱动微服务的框架。
    通过定义绑定器Binder作为中间层,实现了应用程序与消息中间件细节之间的隔离。
    在这里插入图片描述
    2.Stream中的消息通信方式遵循发布-订阅模式。
    3.Steam中常用的注解说明:
    在这里插入图片描述

  • 相关阅读:
    【C语言】深入理解数据表示与存储
    SpringMVC 解析(四)编程式路由
    亚马逊云科技多项新功能与服务,助力各种规模的组织拥抱生成式 AI
    SQL中的case then的使用(select、update、insert、delete中各自使用)
    RouterOS-配置PPPoEv4&v6 Server
    12.权重衰退+QA
    韩顺平java510-515要点笔记
    隐藏 IP 地址调用外部接口:探索与实践
    three.js 场景中如何彻底删除模型和性能优化
    Java基础(五)
  • 原文地址:https://blog.csdn.net/m0_67390788/article/details/126553310