Das AWS Flow Framework

Als Teil des AWS SDK stellt Amazon ebenfalls das AWS Flow-Framework bereit, mit dem Amazon SWF-basierte Anwendungen entwickelt werden können. Dieses Framework bietet diverse Modelle welche die Aufgabekoordinierung hinter Amazon SWF abstrahieren. Das AWS Flow Framework soll dabei helfen Aufgaben zu erstellen und zu orchestrieren sowie die gegenseitigen Abhängigkeiten darstellen. So wird bspw. ein neuer Activity Task mit einer Methode gestartet und Fehler von Nodes können per Exceptions abgefangen werden.

Das AWS Flow Framework übersetzt einen Methodenaufruf automatisch in eine Entscheidung, um den entsprechenden Activity Task zu planen und weist Amazon SWF an, den Task einem Node zuzuordnen. Das Ergebnis des Tasks gibt das Framework ebenfalls als Rückgabewert der Methode zurück. Um die gegenseitige Abhängigkeit von Aufgaben darzustellen, kann einfach der Rückgabewert einer Methode als Parameter für eine andere Methode übergeben werden. Aufrufe solcher Methoden blockieren nicht und das Framework führt diese automatisch aus, wenn alle benötigten Eingabeparameter vorhanden sind. Das Framework erhält dazu Node- und Entscheidungstasks von Amazon SWF, ruft die entsprechenden Methoden im Programm auf und formuliert Entscheidungen, um diese zurück an Amazon SWF zu senden.

Das AWS Flow Framework ist, als Teil des AWS SDK für Java, derzeit nur für Java verfügbar.