Flux de travail Amazon SWF - Amazon Simple Workflow Service

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Flux de travail Amazon SWF

Qu'est-ce qu'un flux de travail ?

Avec Amazon Simple Workflow Service (Amazon SWF), vous pouvez mettre en œuvre des applications distribuées asynchrones en tant queflux de travail. Les flux de travail permettent de coordonner et de gérer l'exécution des activités qui peuvent être exécutées de façon asynchrone sur plusieurs équipements informatiques et qui peuvent comporter à la fois le traitement séquentiel et parallèle.

Lorsque vous créez un flux de travail, vous analysez votre application pour identifier son composant tâches. Dans Amazon SWFactivités. L'ordre dans lequel les activités sont exécutées est déterminé par la logique de coordination du flux de travail.

Exemple de flux de travail simple : application de commerce électronique

Par exemple, la figure suivante illustre un flux de travail simple de traitement des commandes pour un commerce en ligne, qui implique à la fois des processus automatisés et manuels.


               Présentation de l'exemple de flux de travail

Ce flux de travail démarre lorsqu'un client passe une commande. Il comprend quatre tâches :

  1. Vérifier la commande

  2. Si la commande est valide, facturer le client

  3. Si le paiement est effectué, expédier la commande

  4. Si la commande est livrée, enregistrer les détails de cette dernière

Les tâches de ce flux de travail sont séquentielles : la commande doit être confirmée avant de pouvoir facturer la carte de crédit ; la carte de crédit doit être débitée avant de pouvoir livrer la commande ; et la commande doit être livrée avant de pouvoir être enregistrée. Pour autant, comme Amazon SWF prend en charge les processus distribués, ces tâches peuvent être effectuées dans des endroits différents. Si les tâches doivent être programmées, elles peuvent également être écrites dans différents langages de programmation ou à l'aide de différents outils.

En plus du traitement séquentiel des tâches, Amazon SWF prend également en charge les flux de travail avec le traitement des tâches en parallèle. Les tâches parallèles sont effectuées en même temps et peuvent être accomplies indépendamment par différentes applications ou personnes. Le flux de travail prend des décisions sur la procédure à suivre à une fois qu'une ou plusieurs tâches parallèles ont été terminées.

Exécution et enregistrement de flux de travail

Une fois que la logique de coordination et les activités ont été conçues, vous enregistrez ces composants en tant que types de flux de travail et d'activités via Amazon SWF. Lors de l'enregistrement, vous spécifiez pour chaque type un nom, une version et certaines valeurs de configuration par défaut.

Seuls les types de flux de travail et d'activités enregistrés peuvent être utilisés avec Amazon SWF. Dans l'exemple de commerce en ligne, vous devriez enregistrer le type de flux de travail CustomerOrder et les types d'activités VerifyOrder, ChargeCreditCard, ShipOrder et RecordCompletion.

Après avoir enregistré votre type de flux de travail, vous pouvez l'exécuter aussi souvent que vous le voulez. Une exécution de flux de travail est une instance en cours d'exécution d'un flux de travail. Dans l'exemple de commerce en ligne, une nouvelle exécution de flux de travail se lance à chaque commande client.

Une exécution de flux de travail peut être lancée par n'importe quel processus ou n'importe quelle application, même par une autre exécution de flux de travail. Dans l'exemple du commerce en ligne, le type d'application qui initie le flux de travail dépend de la façon dont le client passe commande. Le flux de travail peut être initié par un site Web, une application mobile ou un représentant du service client utilisant une application d'entreprise interne.

Avec Amazon SWF, vous pouvez associer un identificateur, appelé unworkflowId— avec vos exécutions de flux de travail. Vous pouvez donc intégrer vos identifiants existants dans votre flux de travail. Dans l'exemple du commerce en ligne, l'exécution de chaque flux de travail peut être identifiée à l'aide du numéro de facture du client.

En plus de l'identifiant que vous fournissez, Amazon SWF associe un identifiant unique généré par le système, unrunId: à chaque exécution de flux de travail. Amazon SWF permet à une seule exécution de flux de travail avec cet identifiant à s'exécuter à un moment donné ; même si vous pouvez avoir plusieurs exécutions de flux de travail le même type de flux de travail, chaque exécution de flux de travail a un distinctrunId.

Voir aussi

Historique du flux de travail Amazon SWF