我有一个在 2 个服务器上运行 >3 个活动的工作流,但我希望其中一个活动在第三个专用服务器上运行,即该服务器应该只执行活动 x 而不是整个工作流。到目前为止(以我有限的知识),我可以在活动中进行服务调用以在专用服务器上执行流程,然后在完成后接收回调,但我觉得必须有一种更简单的方法。
有没有人试过这个?
我有一个在 2 个服务器上运行 >3 个活动的工作流,但我希望其中一个活动在第三个专用服务器上运行,即该服务器应该只执行活动 x 而不是整个工作流。到目前为止(以我有限的知识),我可以在活动中进行服务调用以在专用服务器上执行流程,然后在完成后接收回调,但我觉得必须有一种更简单的方法。
有没有人试过这个?
活动和工作流任务通过任务列表交付。默认情况下,活动安排在与活动类型关联的默认任务列表上。您必须为第三个活动使用不同的任务列表,并确保其活动工作人员在该任务列表上轮询。
如果您使用的是适用于 Java 的 AWS Flow Framework,则可以通过以下注释进行操作:
@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构造函数参数。