文章目录
- 一、Gateway网关
- 二、分布式配置中心SpringCloud Config
- 三、消息总线(BUS)
- 四、Spring Cloud Stream
一、Gateway网关
API Gateway是一个服务器,也可以说是进入微服务系统的唯一节点,并且提供了API给各个客户端,它还可以有其他功能,如授权、监控、负载均衡、缓存、请求分片和管理、静态响应处理等。
API Gateway负责请求转发、合成和协议转换。所有来自客户端的请求都会先经过API Gateway,然后负载均衡这些请求到对应的微服务。
GateWay三大核心概念:
具体用法:Gateway网关简介及使用 所需要的依赖
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-gateway</artifactId>
</dependency>
只需要一个启动类,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
二、分布式配置中心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中常用的注解说明: