如何编排功能的工作流程
How to orchestrate a workflow of functions
我想创建一个 java.util.functions 的目录,所以当我输入 A、B、C 时,应用程序会 运行 这些函数以相同的顺序将输出流到下一个函数?
以上说法是基本的,我很想听听想法。最终,工作流将输入 json 来编排它。
还需要支持 reactor 以及我们可以在哪里映射、平面映射或过滤。
现在所有功能都将在项目中可用,并且将成为 Spring 启动应用程序的一部分。
我在想,我可以将函数作为 bean,拉取它们并按顺序执行,尽管不确定如何在有过滤器的情况下编排函数,然后如果我想在我想使用的地方使用反应堆有地图或平面图。
请分享任何值得研究的想法或框架。
谢谢
我认为使用工作流协调器平台是实现此用例的好方法。
您可能不需要它,因为您的所有功能都在同一个服务中可用,但是随着您的服务变得越来越复杂,或者需要跨多个编排您的用例时,使用编排平台将提供很大的灵活性服务出现。
工作流程编排的一个选项是 Netflix Conductor。这是一个 article 讨论如何使用 Conductor 来管理顺序任务。 Conductor 平台还具有 运行 以分布式方式流动的功能,例如分叉连接、决策等,这可以跨不同的服务完成。
Ex:服务 1 托管函数 A,服务 2 托管函数 B 和 C。您可以构建一个流 运行ning A -> B -> C,同时 passing/referring 从以前执行的功能,无需构建任何状态管理系统。
上面的文章是为了回应这个而写的,这与你的非常相似。
为了清楚起见 - 我曾经在 Netflix 的团队中构建和开源 Conductor。
我想创建一个 java.util.functions 的目录,所以当我输入 A、B、C 时,应用程序会 运行 这些函数以相同的顺序将输出流到下一个函数?
以上说法是基本的,我很想听听想法。最终,工作流将输入 json 来编排它。
还需要支持 reactor 以及我们可以在哪里映射、平面映射或过滤。
现在所有功能都将在项目中可用,并且将成为 Spring 启动应用程序的一部分。
我在想,我可以将函数作为 bean,拉取它们并按顺序执行,尽管不确定如何在有过滤器的情况下编排函数,然后如果我想在我想使用的地方使用反应堆有地图或平面图。
请分享任何值得研究的想法或框架。
谢谢
我认为使用工作流协调器平台是实现此用例的好方法。
您可能不需要它,因为您的所有功能都在同一个服务中可用,但是随着您的服务变得越来越复杂,或者需要跨多个编排您的用例时,使用编排平台将提供很大的灵活性服务出现。
工作流程编排的一个选项是 Netflix Conductor。这是一个 article 讨论如何使用 Conductor 来管理顺序任务。 Conductor 平台还具有 运行 以分布式方式流动的功能,例如分叉连接、决策等,这可以跨不同的服务完成。
Ex:服务 1 托管函数 A,服务 2 托管函数 B 和 C。您可以构建一个流 运行ning A -> B -> C,同时 passing/referring 从以前执行的功能,无需构建任何状态管理系统。
上面的文章是为了回应这个
为了清楚起见 - 我曾经在 Netflix 的团队中构建和开源 Conductor。