微服务是一种比较流行的架构,将一个应用程序按照不同的业务、功能等分割成多个服务,多个服务之间彼此配合。
SpringCloud是基于Spring的一个轻量级的企业级微服务开源框架。
注册中心、服务调用、网关服务、负载均衡、熔断器
注册中心:Eureka
服务调用:OpenFeign、RestTemplate
网关服务:Gateway
负载均衡:Ribbon、Nginx
熔断器:Hystrix
配置中心:config 主要用于分布式系统
当某服务一段时间内没有向注册中心发送心跳,则注册中心会将该服务进入自我保护,如果保护时间内服务恢复则可退出自我保护
openFeign 主要用于服务调用,但是由于内部集成了Ribbon,则可以实现负载均衡,内部也集成了Hytrix,所以也可实现熔断降级
Gateway 主要用于网关管理,主要负责流量过滤转发等功能,可实现动态路由、也可进行限流、以及鉴权等
熔断是一种保护机制,用于解决服务雪崩。
降级是在被调服务故障时,进行的备用服务。保证系统的高可用。