microservices - 微服务架构设计题
问题描述
假设我使用rest call在所有部分进行通信
如果有请求需要所有这些服务来计算结果。请求路径如下:
client->Account Service -> Inventory Service ->Shipping Service
道路漫长而复杂。如果 Account Service 后出现错误,我需要通过 Saga 模式进行补偿。
我想问一下,我可以在这些服务之上添加一个逻辑单元“A”,如下所示:
这样我就可以处理此服务上的所有逻辑。这些服务仅帮助逻辑单元查询和调整原始数据。所有复杂的逻辑都在逻辑单元中进行。
解决方案
我可以在这些服务之上添加一个逻辑单元“A”吗
你可以做任何你想做的事。你是否应该这样做取决于你。没有规定微服务不应该相互调用的规则,尽管流行的观点会引导你尽量避免它。
您面临的决定是所谓的“编排与编排”的权衡。在做出决定之前,您应该阅读此内容。
推荐阅读
- css - 子与父之间的显示元素
- arrays - AngularJS 仅在同一个月的多个日期显示月份
- reactjs - 如何在 Materialise Css 中使用 ScrollFire Demo 和 react
- ios - iOS Swift 4 - 如何在 NavigationController 中推送 UISearchController
- c++ - 编写程序显示奇数和偶数
- android - 在进行发布构建时将 android studio 3.0.1 更新到 3.1 后 Proguard 给出错误
- c# - 递归约束:DBase 做什么
: 其中 T : DBase 意思是? - python - 为什么开集永远不会为0?
- css - Product 元素显示为三分之一 (1/3)
- html - HTML:如何创建具有不同语言内容的网页