【问题标题】:corrulation between microservice apps?微服务应用程序之间的相关性?
【发布时间】:2021-06-27 08:44:57
【问题描述】:

我正在通过 spring boot 和 spring cloud 编写一个微服务应用程序。我有五个模块是

  • API-Gateway(基于 Spring Cloud Gateway Spect)
  • Discovery-Server(基于spring cloud Netflix Eureka服务发现)
  • 微服务-A(这是一个包含我们业务的 Spring Boot 应用)
  • Microservice-B(这是一个包含我们业务的 Spring Boot 应用)
  • Microservice-C(这是一个包含我们业务的 Spring Boot 应用)

来自用户的所有请求都路由到 API 网关并通过 API 网关发送到应用程序 A 或 B 或 C(这些不会暴露出来)。现在我有一个问题,基于一个业务角色,应用程序 A 需要调用应用程序 B 的一个休息端点。哪种方法最好?我直接从应用 A 调用应用 B 端点还是通过 API-Gateway 调用?

【问题讨论】:

    标签: spring-boot microservices spring-cloud-gateway


    【解决方案1】:

    API 网关应该用作入口层,它只接受来自应用程序外部(客户端/外部集成)的流量。更多详情here.

    您的微服务之间的任何内部通信都应该是点对点的交互,可以通过多种方式完成。 This 回答更详细地描述了这一点。

    因此 API 网关不应该关心微服务的编排。

    【讨论】:

      【解决方案2】:

      如果我是你,我将使用消息代理进行微服务通信。让外部客户端的api网关。我认为我们过度使用了 http 协议。对于微服务架构,我们应该尝试以不同的方式思考。

      【讨论】:

        猜你喜欢
        • 2017-12-09
        • 2020-08-11
        • 1970-01-01
        • 2017-12-07
        • 1970-01-01
        • 2021-12-05
        • 2017-08-29
        • 2018-09-01
        • 2021-10-21
        相关资源
        最近更新 更多