我有一个在2台服务器上运行> 3活动的工作流程,但我希望其中一项活动在第3台专用服务器上运行,即此服务器应该只执行活动x而不是整个工作流程。到目前为止(我的知识有限)我可以在活动中进行服务调用以在专用服务器上执行该过程,然后在完成后接收回调,但我感觉必须有一个更简单的方法。
有没有人试过这个?
答案 0 :(得分:4)
活动和工作流程任务通过task lists提供。默认情况下,活动计划在与活动类型关联的默认任务列表中。您必须为第三个活动使用不同的任务列表,并确保其活动工作人员轮询该任务列表。
如果您使用AWS Flow Framework for Java,则可以通过以下注释执行此操作:
@Activities
@ActivityRegistrationOptions(...) // used by activity1 and activity2
public interface MyActivities {
public void activity1();
public void activity2();
// override for activity3
@ActivityRegistrationOptions(defaultTaskList="activity3", ...)
public void activity3();
}
然后使用" activity3"作为activity3 ActivityWorker的 taskListToPoll 构造函数参数。