是否有方法在Amazon SWF工作流中的Activity中調用@Signal函數。 我希望能夠通知工作流某些處理已完成,並且應爲該處理的子集產生子工作流。 這將如何完成?Amazon SWF @Signal
1
A
回答
1
聽起來好像您要告訴工作流程,某些活動的一部分已完成,但您想要繼續運行當前活動。如果是這種情況,那麼我建議您將活動分成兩部分,並使用第一部分的結果來判斷是否需要生成子工作流程。我不認爲在Flow框架中可以在工作流程中發送信號。但是,您可以使用原始SWF API發送信號(在這種情況下,您需要將「運行ID」作爲參數之一傳遞給您的活動)。
1
生成的工作流外部客戶端應該用於從活動代碼中發送信號。 ActivityExecutionContext包含所有必要的數據初始化:
public class MyActivitiesImpl implements MyActivities {
private final ActivityExecutionContextProvider contextProvider = new ActivityExecutionContextProviderImpl();
public void sendSignalBackActivity() {
ActivityExecutionContext context = contextProvider.getActivityExecutionContext();
AmazonSimpleWorkflow service = context.getService();
String domain = context.getDomain();
WorkflowExecution workflowExecution = context.getWorkflowExecution();
MyWorkflowClientExternalFactory factory = new MyWorkflowClientExternalFactoryImpl(service, domain);
GreeterClientExternal workflow = factory.getClient(workflowExecution);
workflow.signalMethod();
}
}
由於外部客戶端調用SignalWorkflowExecution SWF API它會由於間歇性連接問題。因此,活動實施可能會決定在這種情況下拋出並處理(可能通過重試)AmazonServiceException。
相關問題
- 1. Amazon SWF計劃任務
- 2. 如何使用Amazon SWF內部?
- 3. 如何處理Amazon SWF信號?
- 4. QLineEdit和Escape Signal
- 5. Beat Signal Plot Matlab
- 6. Android Signal 11(SIGSEGV)
- 7. Catch&Ignore Signal
- 8. uencode -signal processing matlab
- 9. Catch CTRL- \ signal
- 10. Signal Reconnect&TimeOut
- 11. Signal disconnected - java
- 12. signal R和windows azure
- 13. c替代signal()+ alarm()
- 14. QT Signal Slot問題
- 15. Signal R不更新
- 16. 發出SIGNAL信號?
- 17. ERROR org.apache.hadoop.hdfs.server.datanode.DataNode:RECEIVED SIGNAL 15:SIGTERM
- 18. VHDL變量比。 Signal
- 19. 關於SIGNAL/SLOT QT4
- 20. Qt C++ WebKit windowCloseRequested Signal
- 21. Django Signal vs Python Threading
- 22. Amazon SWF:放置決策邏輯的位置?
- 23. 使用Amazon SWF在服務器之間進行通信
- 24. 如何在Amazon SWF中添加第二個活動hello_sample示例
- 25. Amazon SWF Lambda函數錯誤 - 在地區中不可用
- 26. 是否有可能將Flash從swf直接發佈到Amazon S3?
- 27. 在非亞馬遜服務器上使用Amazon Simple Workflow SWF
- 28. 在Desktop應用程序中使用Signal Signal服務
- 29. Android工作室在調試時凍結消息「SIGNAL = SIGABRT(signal SIGABRT)」
- 30. Amazon S3和swfaddress