我正在查看使用Flow Framework(即Java)的Amazon SWF可用示例 - 在示例中我注意到有一个类具有启动工作流执行的“main” - 还有其他类似的类具有“ main“启动工作流工作者和活动工作者(即工作流主机和活动主机)。
这是否意味着要运行工作流,我必须将所有3个类的执行代码放入我的void main中?即我是否必须自己启动工作流主机,活动主持人并启动工作流程?或者我只需要以指定的格式定义WorkFlow Host和Activity Host类,然后使用Workflow客户端工厂启动工作流程?
答案 0 :(得分:1)
SWF工作流程中有三个组件 - 工作人员,活动和客户端。工作流主机类启动工作流工作程序,而活动主机启动活动工作程序。工作流和活动工作者必须始终启动并运行以处理各种工作流任务。因此,您必须在void main
。
客户端(使用工作流客户端工厂)可以在需要时发出启动工作流的请求。
为简单起见,示例可能包含相同main方法中的所有三个类,但理想情况下Client应该是不同application / main的一部分,可以随时调用start / end工作流,而活动和worker应该连续运行。