微服务中的动态工作流架构

时间:2018-06-09 10:36:46

标签: microservices scalability distributed-computing api-design system-design

考虑以下情况:

你的系统由一些微服务组成 - 比如A,B,C,D和E.

系统用户为您提供输入(比如文件格式),并需要将输入转换为其他文件格式。取决于输入 - >指定的输出,您的系统必须调用其中所有/部分微服务的排列(工作流),以完成工作。

您将如何为此设计高效,高度可扩展且高度可用的系统? 具体来说,解决这些问题:

  • 你将如何调用服务/决定模式? 每个输入/输出组合的调用需要一个独特的工作流程?
  • 您如何避免这种特殊情况:服务C需要 两项服务的产出A& B表示产生其输出的请求。你可以执行A& B并行,但A是计算重,B非常快,导致服务C膨胀B输出,但等待 在A的输出上,最终导致C崩溃。
  • 即使在可能发生间歇性网络故障的情况下,您如何确保最终用户始终获得结果?

0 个答案:

没有答案