RVi*_*Vid 4 amazon-web-services aws-step-functions aws-serverless
在Standard Workflow我们可以愉快地调用另一个Standard workflow使用
{
"Type": "Task",
"Resource": "arn:aws:states:::states:startExecution.sync:2",
"Parameters": {
"StateMachineArn": "${NestedStateMachineArn}",
...
}
...
Run Code Online (Sandbox Code Playgroud)
当我们尝试做同样的事情时,Express workflow我们当然会得到Express state machine does not support '.sync' service integration. 这是由aws预期的行为所表明的。
是否有另一种方法可以Express workflow从另一个执行Express workflow并以某种方式获取执行结果/输出?我可以想到最后的手段 - 使用Lambda函数来执行嵌套工作流同步并等待响应,也就是说,这会增加函数不必要地等待的成本StateMachine。
我试图环顾四周,但在任何地方都找不到这个记录。
您可以使用 API 同步执行 Express 执行StartSyncExecution,现在支持使用该 API 作为 Step Functions 中的AWS 开发工具包集成"Resource": "arn:aws:states:::aws-sdk:sfn:startSyncExecution"。
"NestedExpressWorkflow": {
"Type": "Task",
"Resource": "arn:aws:states:::aws-sdk:sfn:startSyncExecution",
"Parameters": {
"StateMachineArn": <your_express_state_machine>,
"Input.$": "$"
},
"Next": "NextState"
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1970 次 |
| 最近记录: |