【发布时间】:2019-03-20 22:30:11
【问题描述】:
我一直在使用 spring,现在想学习 spring boot 和微服务。我了解microservice 的全部内容以及它是如何工作的。在浏览文档时,我遇到了许多用于开发 microservices 和 spring boot 的东西,我对此感到非常困惑。
我列出了下面的系统和问题:
-
Netflix Eureka - 我知道这是服务发现平台。
所有
services将注册到eureka服务器和所有microservices是eureka客户。现在我的疑问是,没有 API网关这个服务注册表有什么用吗?这是 了解服务注册中心的实际使用情况。 ZUULApi 网关- 我知道 ZUUL 可以用作 API 网关,它基本上是一个负载均衡器,调用适当的 请求 URL 对应的微服务。是那个假设 正确的? api 网关是否会与 Eureka 交互以获取 合适的微服务?
NGINX - 我看过
NGINX也可以用作API网关?那可能吗?我还阅读了一些其他地方,例如NGINX可以用作服务注册表,即作为 Eureka 的替代品!因此哪个是正确的? Api 网关或服务注册表或两者兼而有之?我知道nginx是一个网络服务器,reverse proxies可以进行强大的配置。AWS api 网关 - 这也可以用作
ZUUL的替代品吗?RIBBON -
ribbon用于什么用途?没看懂!AWS ALB- 这也可用于负载平衡。因此,如果我们有
AWS ALB,我们还需要 ZUUL 吗?
请帮忙
【问题讨论】:
-
我发现这门课程对使用 Udemy 的领域驱动设计的 Spring MicroServices In Depth 很有用。它讨论了方法、设计模式和技术(Eureka、Ribbon、Hystrix 等)
标签: amazon-web-services spring-boot nginx microservices netflix-zuul