微服务包含以下组件:
- Spring Cloud Config服务器
- Netflix Eureka命名服务器
- Hystrix服务器
- Netflix ZuulAPI网关服务器
- Netflix功能区
- Zipkin分布式跟踪服务器
Spring Cloud Config Server为分布式系统中的外部配置提供了基于HTTP资源的API。我们可以使用注释@EnableConfigServer启用Spring Cloud Config Server。
Netflix Eureka命名服务器
Netflix Eureka Server是发现服务器。它向外部提供了REST接口以与其进行通信。出现微服务后, 将其自身注册为发现客户端。 Eureka服务器还具有另一个称为Eureka Client的软件模块。 Eureka客户端与Eureka服务器进行交互以发现服务。 Eureka客户端还会平衡客户端请求。
Hystrix服务器
Hystrix服务器充当容错鲁棒系统。它用于避免应用程序完全失败。它通过使用断路器机制来做到这一点。如果应用程序正常运行, 则电路保持关闭状态。如果应用程序遇到错误, Hystrix服务器将断开电路。 Hystrix服务器停止对呼叫服务的进一步请求。它提供了一个高度健壮的系统。
Netflix Zuul API网关服务器
Netflix Zuul Server是一个网关服务器, 所有客户端请求都从该服务器通过。它充当客户端的统一接口。它还具有一个内置的负载均衡器, 以负载来自客户端的所有传入请求的余额。
Netflix功能区
Netflix Ribbon是客户端进程间通信(IPC)库。它提供了客户端平衡算法。它使用循环负载均衡:
- 负载均衡
- 容错能力
- 多种协议(HTTP, TCP, UDP)
- 缓存和批处理
Zipkin是一个开源项目m项目。这提供了发送, 接收和可视化跟踪的机制。
【微服务由什么组成(详细解释————)】你需要关注的一件事是端口号。
Application | Port |
---|---|
Spring Cloud Config服务器 | 8888 |
Netflix Eureka命名服务器 | 8761 |
Netflix Zuul API网关服务器 | 8765 |
Zipkin分布式跟踪服务器 | 9411 |
推荐阅读
- 微服务监控工具和虚拟化解释
- Spring Cloud从货币转换服务调用货币交换服务
- Spring Cloud的主要项目详细解释
- Spring Cloud Eureka命名服务器示例图解
- Spring Cloud的功能简要介绍
- Spring Cloud创建一个简单的微服务(图文)
- 微服务架构(MSA)与面向服务架构(SOA)之间的区别
- 将微服务连接到Eureka命名服务器
- Spring Cloud创建一个JPA存储库示例