【问题标题】:Resolve IP Address of microservice instance in spring could [jhipster]在spring可以解析微服务实例的IP地址[jhipster]
【发布时间】:2020-08-26 21:58:53
【问题描述】:

我正在使用 Jhipster 创建一个简单的微服务架构,基本上我有一个 Eureka 注册表正在运行,其中注册了一堆微服务实例。

有些微服务需要和其他微服务通信或者查询一些数据,但是每个微服务都有一个动态IP地址,是否可以使用实例名解析IP并做请求?

【问题讨论】:

    标签: java spring jhipster netflix-eureka


    【解决方案1】:

    这已经由 JHipster Eureka 架构提供。

    • 微服务(Eureka 客户端)向注册表(Eureka 服务器)注册。
    • 然后,将eureka.client.fetch-registry 属性设置为true 的每个微服务都会配置其功能区实例,并可以使用http://<service name>/api/something 等服务名称URL 连接到其他注册服务,使用RestTemplateFeignClient

    您没有说您选择了哪种身份验证,此文档适用于 UAA,即使对于普通 JWT 也可能有所帮助:https://www.jhipster.tech/using-uaa/#inter-service-communication

    【讨论】:

      【解决方案2】:

      您可以使用服务器端负载平衡模式。 Netflix Zuul 作为 API 网关为您提供这种平衡(使用 Netflix Ribbon 作为负载平衡器)。 在您的情况下:创建 Zuul µservice(不要忘记 annotation@EnableZuulProxy)并在 Eureka 中注册。

      完成这些步骤后,您将能够通过 Zuul µservice 地址调用在 Eureka 中注册的 µservice 实例,而无需知道它们在客户端的地址。

      【讨论】:

        猜你喜欢
        • 2018-06-17
        • 2018-01-02
        • 2019-01-20
        • 1970-01-01
        • 2018-07-04
        • 2015-12-01
        • 1970-01-01
        • 2015-09-11
        • 1970-01-01
        相关资源
        最近更新 更多