Spring Cloud

2022-05-13  本文已影响0人  极速魔法

微服务架构

网关

Spring Cloud

Spring Cloud组件

Eureka

服务注册中心本质是为了解耦服务提供者和服务消费者
CAP支持 AP, Zookeeper 支持 CP

Eureka通过心跳检测,健康检查和客户端缓存机制,提高系统的灵活性,可伸缩性,可用性。

自我保护

15分钟内超过85%的客户端节点没有正常心跳,Eureka认为客户端与注册中心出现了网络故障,进入自我保护机制,不会移除实例

Ribbon

服务器端负载均衡:负载均衡的执行是在服务端
客户端负载均衡:负载均衡的执行是在客户端

Ribbon拦截客户端请求, 根据服务名获取该服务的实例列表,按照一定的负载均衡策略获取一个实例server,发起访问

Hystrix

雪崩效应解决

舱壁模式(线程池隔离)

@HystrixCommand注解默认共用线程池,线程池数量 10。
为了避免问题服务请求过多,导致正常服务⽆法访问,
Hystrix 不是采⽤增加线程数, ⽽是单独的为每⼀个控制⽅法创建⼀个线程池的⽅式

# 查看 java进程
jps
# 指定进程的线程信息
jstack 2419 | grep hystrix

Feign

Feign = RestTemplate+Ribbon+Hystrix
当 Feign ,Hystrix 配置两个超时时间,取最小的超时时间。

GateWay

网关转发请求到下游的微服务,API路由

GateWay过滤器

分布式配置中心

Config配置自动更新
Spring Cloud Config + Spring Cloud Bus实现自动配置更新

Spring Cloud Stream

进行了上层抽象,与具体的消息中间件解耦,屏蔽底层具体MQ消息中间件差异。

Stream概念

Stream注解

上一篇下一篇

猜你喜欢

热点阅读