AWSのSWFはかなり新しいです。 私はワークフローを作成しており、完了したばかりのアクティビティの名前を特定する方法を理解するのに苦労しています。決定者は、次にスケジュールする活動を決定できるようにこれを知る必要があります。AWS SWFで完了したアクティビティのアクティビティIDを探しますか?
ActivityTaskCompletedEventAttributes(http://docs.aws.amazon.com/amazonswf/latest/apireference/API_ActivityTaskCompletedEventAttributes.html)には、完了したアクティビティのIDまたは名前に関する情報は含まれません。
一方、ActivityTaskScheduleEventAttributes(http://docs.aws.amazon.com/amazonswf/latest/apireference/API_ActivityTaskScheduledEventAttributes.html)にはこの情報が含まれています。
完了したばかりのアクティビティのアクティビティIDと名前を特定するとき、イベント履歴に戻って、スケジュールされた最後のアクティビティのIDと名前を取得するのが一般的です(そして、完了)?それは私にとって正しいとは思わない。
ドキュメント(http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dg-dev-deciders.html#swf-dg-coordination-logic)では、以前に完了したアクティビティの名前の名前を認識していると思われる方法でコーディネーションロジックを定義する方法について説明しています。
これは実際どのように実際に達成されていますか?
- ジョー
感謝を。 1時間ほど前と同じ問題がありましたので、解決策が見つかったのは良いことです。それは奇妙なデザインの決定のビットですね。この背後にあるロジック(つまり、デシリアンが大量のタスクをバッチに分割している場合)のロジックが得られますが、ほとんどの場合、必ずあるタスクから別のタスクに移行する必要があります。 –
合意。データが他の場所で見つかった場合(つまり、スケジュールされたイベントで利用可能な場合は、完了したイベントにアクター名を含めないでください)、新しいプロパティをオブジェクトに追加しないという点もありますが、間違いなく便利です。 – Joe