Microservices 如何获得对不同微服务的负载平衡访问(使用ribbon、Springboot)

Microservices 如何获得对不同微服务的负载平衡访问(使用ribbon、Springboot),microservices,spring-cloud,netflix-ribbon,Microservices,Spring Cloud,Netflix Ribbon,考虑一个场景:MasterApp(microservice 1)需要调用AssistApp(microservice 2)来获取数据集a和tertiaryApp(microservice 3)来获取数据集B。 每个微服务(2和3)都有3个需要负载平衡的实例(Ribbon用于客户端负载平衡)。 您能告诉我如何准备application.properties吗。我无法将所有6个实例都放在服务器的属性列表下 我搜索了google(Dzone、nginx、github和其他论坛中的spring示例)有一

考虑一个场景:
MasterApp(microservice 1)
需要调用
AssistApp(microservice 2)
来获取数据集
a
tertiaryApp(microservice 3)
来获取数据集
B
。 每个微服务(2和3)都有3个需要负载平衡的实例(Ribbon用于客户端负载平衡)。 您能告诉我如何准备application.properties吗。我无法将所有6个实例都放在服务器的属性列表下


我搜索了google(Dzone、nginx、github和其他论坛中的spring示例)有一段时间了,但是我没有找到这个场景的结论。

一般来说,你不应该在
应用程序.properties中配置任何内容。
我想您的
application.properties
中已经有了一个param
spring.application.name
。此外,您已将您的申请注册到Eureka

那么你的电话应该是:

restTemplate.getForObject(“http://SERVICE_NAME/xx/yy“”

您不需要关心您的3实例ip/端口,只需保持它们的应用程序名称相同即可


你也应该考虑<代码> Fiange,它会更加符合你的要求。

你应该选择一个服务注册表,比如Eurka或Cuffl。我使用Eurkya,但是在做PoC时,我在网上看到的所有例子都在属性文件中列出了服务器列表,所以我很困惑。后来,正如@chaojiang所建议的,我不需要知道uri和端口号。