【问题标题】:Microservice architecture design question微服务架构设计题
【发布时间】:2020-07-16 20:15:19
【问题描述】:

假设我在所有部分都使用rest call进行通信

我发现大多数微服务架构师是这样的:

如果有请求需要所有这些服务来计算结果。 请求路径如下:

client->Account Service -> Inventory Service ->Shipping Service

道路漫长而复杂。 如果 Account Service 后出现错误,我需要按 Saga 模式进行补偿。

我想问一下,我能否在这些服务之上添加一个逻辑单元“A”,如下所示:

这样我就可以处理此服务上的所有逻辑。这些服务仅帮助逻辑单元查询和调整原始数据。所有复杂的逻辑都在逻辑单元中进行。

【问题讨论】:

    标签: microservices


    【解决方案1】:

    我可以在这些服务之上添加一个逻辑单元“A”

    可以做任何你想做的事。你是否应该这样做取决于你。没有规则规定微服务不应相互调用,尽管流行的观点会指导您尽可能避免这种情况。

    您面临的决定是所谓的“编排与编排”权衡。在做出决定之前,您应该阅读此内容。

    Orchestration vs. Choreography

    【讨论】:

    • 感谢您的回答。我认为这个网站 softobiz.com/microservice-orchestration-vs-choreography> 也很好地解释了编排与编排。
    猜你喜欢
    • 2018-04-28
    • 2020-06-23
    • 2019-04-12
    • 2019-10-08
    • 2022-11-15
    • 2021-04-30
    • 1970-01-01
    相关资源
    最近更新 更多