我正在使用Jhipster创建一个简单的微服务体系结构,基本上我有一个Eureka注册中心,它注册了大量的微服务实例。
有些微服务需要与其他微服务对话或查询某些数据,但每个微服务都有一个动态IP地址,是否可以使用实例化名称来解析IP并执行请求?
发布于 2020-08-27 10:26:18
这已经由JHipster Eureka体系结构提供了。
微服务(Eureka客户端)向注册中心(Eureka Server)注册。然后,每个将FeignClient属性设置为true的微服务将得到其已配置的带实例,并可以使用服务名称URL连接到其他注册服务,如使用RestTemplate或的http://<service name>/api/something。
您没有说明您选择了哪种身份验证,这个文档是用于UAA的,甚至对于普通的JWT:https://www.jhipster.tech/using-uaa/#inter-service-communication也可能有帮助。
发布于 2020-08-26 23:21:18
您可以使用服务器端负载平衡模式。Netflix Zuul作为API网关为您提供了这种平衡(使用Netflix Ribbon作为负载均衡器)。在您的例子中:创建Zuul服务(不要忘记注释@EnableZuulProxy)并在尤里卡注册它。
在这些步骤之后,您将能够通过Zuul服务地址调用注册在Eureka中的服务实例,而不知道它们在客户端的地址。
https://stackoverflow.com/questions/63606310
复制相似问题