Eureka:
注册中心,负责服务的注册和发现以及状态监控;
Rribbon:
实现了负载均衡,不需要再手动拼接请求URL,根据服务名就可以直接调用;
Hystrix:
1.线程隔离和服务降级:使用隔离的线程池去调用服务,调用失败或超时后及时返回服务降级结果,从而避免了请求挂起、线程阻塞导致的服务器级联失败,产生雪崩效应。
2.自动熔断(重连):如果对某个服务调用失败的比例和次数超过了指定阈值,hystrix会认为此服务暂不可用而将之熔断,后续的请求直接响应请求失败;过一会hystrix会半开此服务,如果此时服务恢复正常则关闭熔断器,反之则继续熔断。
Feign:
英文名是伪装的意思,在服务调用者一方配置,屏蔽了对微服务之间Rest接口的显性调用,看起来就像是集中式架构中control调用service一样;
Gateway:
是整个系统外部调用的统一入口,主要职责是对终端请求过滤和路由,拦截器可以进行鉴权等过滤操作,路由则是把外部请求根据路由断言路由到符合断言的微服务中去处理;
Config:
使用git仓库将系统中不同微服务项目的配置文件外置并集中管理;
Bus:
spring-cloud-bus消息总线使用消息队列解决了项目搭建配置中心后,无法及时同步对微服务配置的修改问题,可用于广播配置文件的更改或者服务的监控管理