微服务基础知识
微服务系统
一种设计风格,将一个独立的系统分为多个小型系统,服务与服务之间通过Restful API/远程方法调用进行通信。
Spring Cloud
基于Spring Boot的微服务框架,支持多种微服务中必要的操作。
Spring Cloud中包含的常用组件
Eureka | 服务治理中心 | 微服务架构中存在过多服务,Eureka用于管理这些服务 |
Ribbon | 客户端负载平衡 | 集群模式下,客户端访问服务时如何选择实例 |
Hystrix | 服务容错保护 | 微服务系统中服务出现局部故障时,对整个系统作出相应保护 |
Feign | 声明式服务调用 | 在ribbon和hystrix上进一步封装,通过在eureka中注册的服务名称即完成调用,而不用再通过restTemplate写url请求。 |
Zuul | API网关服务 | 检测访问微服务系统的请求是否合规,并且调度这些请求 |
Config | 分布式配置中心 | 管理微服务系统中的各种属性文件 |
Bus | 消息总线 | 内部消息代理 |
Stream | 消息驱动 | 用于构建基于消息中间件的微服务系统 |
Sleuth | 分布式服务跟踪 | 用于展示服务调用路径 |
一个常见的微服务系统架构图
*:本图从百度图片中转载,如有必要请留言删除