【发布时间】:2021-11-07 11:14:06
【问题描述】:
我们在 Spring Cloud 中有负载均衡、发现等。但是同样的负载均衡,发现也可以在 Kubernetes 中使用。所以只是想知道我们什么时候应该使用 Spring Cloud(负载平衡或发现)以及什么时候使用 Kubernetes
【问题讨论】:
标签: spring-boot kubernetes spring-cloud spring-cloud-loadbalancer
我们在 Spring Cloud 中有负载均衡、发现等。但是同样的负载均衡,发现也可以在 Kubernetes 中使用。所以只是想知道我们什么时候应该使用 Spring Cloud(负载平衡或发现)以及什么时候使用 Kubernetes
【问题讨论】:
标签: spring-boot kubernetes spring-cloud spring-cloud-loadbalancer
这取决于您的用例。在某些情况下,您需要直接使用Spring Cloud Netflix 提供的Eureka server registry 和Eureka client discovery。 Ribbon是Spring Cloud Netflix提供的客户端负载均衡器。
根据我的经验,在任何环境中使用Eureka 并非不可能。它可以是您的本地数据中心或云基础设施。但是在部署环境方面,我们有很多选择来实现服务器注册机制。有时这些替代方案是最好的解决方案。下面我给大家举个例子……
如果您在本地服务器(本地数据中心)中托管应用程序
现在在这种情况下,您可以使用Eureka 并继续您的服务器注册和发现机制。 (这不是唯一的方法。我在这个场景中提到了Eureka,因为这将是一个很好的用例)
如果您在 AWS 基础设施中托管应用程序
AWS 环境为您提供了许多好处和服务,让您可以忘记维护和实施Eureka 的负担。您可以通过AWS load balancers、AWS target groups 甚至通过添加AWS auto scaling groups 来实现相同的行为。在 AWS it self 中,还有很多其他方法可以实现这一目标。
长话短说,对于您的方案,您可以继续使用Kubernetes 的强大功能并获得特权,除非您有特定理由使用Eureka 并付出大量努力来实现它。您应该根据时间、精力、可维护性、性能等选择最适合的。
希望这有助于您获得一个想法。编码愉快!
【讨论】: