Fonctionnalités d'AWS Step Functions


AWS Step Functions fournit une orchestration sans serveur pour les applications modernes. L'orchestration gère de manière centralisée un flux de travail en le divisant en plusieurs étapes, en ajoutant une logique de flux et en suivant les entrées et les sorties entre les étapes.

Pendant l'exécution de vos applications, Step Functions conserve l'état de l'application, suit exactement à quelle étape du flux de travail se trouve votre application et stocke un journal des événements contenant les données transmises entre les composants de l'application. Cela signifie qu'en cas de défaillance des réseaux ou de blocage des composants, votre application peut reprendre là où elle s'était arrêtée.

Le développement d'applications est plus rapide et plus intuitif avec Step Functions, car vous pouvez définir et gérer le flux de travail de votre application indépendamment de sa logique métier. La modification de l'un n'affecte pas l'autre.

Vous pouvez facilement mettre à jour et modifier les flux de travail en un seul endroit, sans avoir à gérer, surveiller et maintenir plusieurs intégrations point à point. Vous pouvez également intégrer facilement pratiquement n'importe quelle application SaaS directement à partir de vos flux de travail. 

Step Functions libère vos fonctions et conteneurs de tout excès de code, de sorte que vos applications sont plus rapides à écrire, plus résilientes et plus faciles à maintenir.

Quelles sont les fonctionnalités de Step Functions ?

Configuration visuelle et facile à utiliser du flux de travail

À l'aide d'AWS Step Functions, vous définissez vos flux de travail comme des machines d'état, qui transforment le code complexe en instructions et diagrammes faciles à comprendre. La création d'applications et la confirmation qu'elles implémentent les fonctionnalités souhaitées sont plus rapides et plus faciles. En savoir plus sur le fonctionnement de Step Functions.

Gestion des erreurs, délais d'attente et flux de traitement parallèle intégrés pour les applications distribuées

AWS Step Functions propose des étapes prêtes à l'emploi pour votre flux de travail, appelées états, qui implémentent des primitives de service de base pour vous, ce qui signifie que vous pouvez supprimer cette logique de votre application. Les états peuvent transmettre des données à d'autres états et microservices, gérer les exceptions, ajouter des délais, prendre des décisions, exécuter plusieurs chemins en parallèle, etc. En savoir plus sur les états.

Gestion améliorée des variables et de la charge utile

AWS Step Functions fournit des fonctionnalités améliorées de gestion des variables et de la charge utile pour accélérer le développement de vos applications. Cela permet aux développeurs de stocker et de référencer plus facilement les données de charge utile dans les flux de travail Step Functions à l'aide de variables. Vous pouvez attribuer et référencer des données à n'importe quel état de vos flux de travail sans passer par des états intermédiaires, ce qui simplifie la gestion de la charge utile entre les états des flux de travail. Les développeurs peuvent utiliser les fonctionnalités intégrées de transformation des données avec JSonata, qui réduit le besoin de code personnalisé et améliore la productivité. JSonata ajoute des fonctionnalités complètes de transformation des données, telles que le formatage date/heure et les opérations mathématiques, et vous permet d'effectuer des manipulations de données directement dans les flux de travail. Vous pouvez également adopter progressivement les variables et JSonata dans les flux de travail nouveaux et existants, que ce soit au niveau du flux de travail ou de l'état individuel, tandis que les flux de travail existants restent pleinement fonctionnels sans nécessiter de modifications. Ces fonctionnalités permettent aux développeurs de créer des flux de travail plus complexes et plus efficaces avec moins d'états, ce qui réduit encore les coûts globaux.

Intégration directe avec 220 services AWS et plus de 10 000 API

Grâce aux intégrations de services d'AWS Step Functions, vous pouvez configurer votre flux de travail Step Functions pour appeler plus de 220 services AWS. Cela inclut :

  • Services de calcul (AWS Lambda, Amazon ECS, Amazon EKS et AWS Fargate)
  • Services de base de données (Amazon DynamoDB)
  • Services de messagerie (Amazon SNS et Amazon SQS), traitement des données
  • Services d'analytique (Amazon Athena, AWS Batch, AWS Glue, Amazon EMR et AWS Glue DataBrew)
  • Services d'IA générative et de machine learning (Amazon SageMaker, Amazon Bedrock)
  • API créées par Amazon API Gateway

 En savoir plus sur les Intégrations au service.

Intégrez pratiquement toutes les applications SaaS directement depuis votre flux de travail

L'intégration des points de terminaison HTTPS d'AWS Step Functions vous permet d'intégrer directement des services HTTP dans vos flux de travail. Vous pouvez créer, gérer et orchestrer des flux de travail en plusieurs étapes composés de services AWS et d'applications SaaS à partir d'un seul endroit. Grâce à l'intégration des points de terminaison HTTPS, vous pouvez facilement coordonner les différents composants de votre application, gérer l'authentification, tester l'intégration et gérer les erreurs sans avoir à écrire de code personnalisé ou à gérer une infrastructure supplémentaire. L'intégration des points de terminaison HTTPS améliore l'agilité des développeurs et vous permet d'étendre facilement les fonctionnalités des applications SaaS qui soutiennent votre entreprise.

Coordination des composants distribués

AWS Step Functions peut coordonner toute application capable d'établir une connexion HTTPS, quel que soit l'endroit où elle est hébergée, par exemple sur des instances Amazon EC2, des appareils mobiles ou des serveurs sur site. Grâce à Step Functions, vous pouvez créer rapidement des applications distribuées qui exploitent les services AWS ainsi que vos propres microservices. En savoir plus sur les tâches d'activité.

La réutilisabilité des composants permet un développement d'applications robuste et efficient

AWS Step Functions coordonne vos fonctions Lambda et vos microservices existants dans des applications robustes, et vous permet de les reconnecter rapidement dans de nouvelles compositions. Les tâches de votre flux de travail peuvent être exécutées n'importe où, y compris sur des instances, des conteneurs, des fonctions et des appareils mobiles. Découvrez comment réutiliser les composants d'applications existants.

Raccourcir les cycles de développement en séparant la logique des flux de travail

AWS Step Functions sépare strictement la logique de votre application de l'implémentation de votre application. Vous pouvez ajouter, déplacer, échanger et réorganiser des étapes sans avoir à modifier votre logique métier. Grâce à cette séparation des préoccupations, vos flux de travail gagnent en modularité, en maintenance simplifiée, en capacité de mise à l’échelle et en réutilisation du code.

Gestion des états et suivi de la progression du flux de travail intégrés

AWS Step Functions maintient l'état de votre application pendant l'exécution, notamment en suivant l'étape d'exécution à laquelle elle se trouve et en stockant les données qui se déplacent entre les étapes de votre flux de travail. Cela signifie que vous n'avez pas à gérer vous-même l'état à l'aide de magasins de données ou en intégrant une gestion d'état complexe à toutes vos tâches.

Gestion des erreurs intégrée

AWS Step Functions gère automatiquement les erreurs et les exceptions grâce à la fonction Try/Catch and Retry intégrée, que la tâche prenne quelques secondes ou plusieurs mois à s'exécuter. Vous pouvez retenter automatiquement les tâches ayant échoué ou ayant dépassé leur délai, réagir différemment aux différents types d'erreurs et rétablir la situation en douceur en vous reportant au code de nettoyage et de restauration indiqué. En savoir plus sur la gestion des erreurs de Step Functions et sur la façon dont vous pouvez gérer les conditions d'erreur à l'aide d'une machine d'état.

Historique d'exécution du flux de travail en temps réel et vérifiable

AWS Step Functions délivre un diagnostic en temps réel et des tableaux de bord, s'intègre avec Amazon CloudWatch et AWS CloudTrail, et enregistre chaque exécution, y compris l'état général, les étapes ayant échoué, les entrées et les sorties. En cas de problème, vous pouvez rapidement identifier non seulement où, mais aussi pourquoi, et résoudre et corriger rapidement les problèmes. En savoir plus sur la surveillance et la journalisation de Step Functions.

Tableau de bord de l'opérateur visuel pour la surveillance et le dépannage

Lancer une application est aussi simple qu'appuyer sur un bouton. Regardez ensuite les étapes qui s'exécutent visuellement afin de vérifier rapidement que tout est en ordre et fonctionne comme prévu. La console affiche clairement les erreurs pour que vous puissiez rapidement en identifier les causes principales et résoudre les problèmes.

Flux de travail à haute disponibilité et tolérants aux pannes

AWS Step Functions dispose d'une tolérance de faute intégrée et maintient la capacité de service sur plusieurs zones de disponibilité au sein de chaque région. Vous bénéficiez ainsi d'une protection de vos applications face aux défaillances d'une machine individuelle ou de votre centre de données. Cela permet d'assurer une grande disponibilité pour le service et le flux de travail de l'application opérée.

Solutions sans serveur évolutives

AWS Step Functions mesure automatiquement les opérations et le calcul sous-jacent pour exécuter les étapes de votre application pour vous, en réponse à des changements de charges de travail. La mise à l'échelle automatique de Step Functions permet d'assurer que la performance de votre flux de travail d'application demeure constante à mesure que la fréquence des requêtes augmente.

Orchestration de gros volumes pour les flux de travail de traitement des événements tels que l'IoT et l'ingestion de données

AWS Step Functions ajoute Express Workflows. Express Workflows prend en charge des taux d'événements supérieurs à 100 000 par seconde, ce qui vous permet de créer des flux de travail à volume élevé et de courte durée.

Flux de travail Express peuvent coordonner les invocations de fonctions AWS Lambda, les actions du moteur de règles AWS IoT et les événements Amazon EventBridge provenant de plus d'une centaine de sources d'événements SaaS tierces AWS.

Pour en savoir plus sur les flux de travail Express et Standard et sur la manière dont ils peuvent être utilisés dans des exemples d'architectures d'automatisation, consultez la page des cas d'utilisation de Step Functions.

Traitement parallèle à grande échelle

Step Functions peut itérer sur des objets tels que des images, des journaux ou des fichiers CSV stockés dans Amazon S3, puis lancer et coordonner des milliers de flux de travail parallèles pour traiter les données. Vous pouvez dimensionner plus rapidement et plus facilement des milliers d'exécutions simultanées de flux de travail, ce qui vous permet d'analyser des millions de journaux, d'itérer sur des téraoctets de données ou de traiter des documents, des images et des fichiers vidéo. En savoir plus sur la fonction Map state de Step Functions pour créer des flux de travail parallèles à grande échelle.

Sécurité

AWS Step Functions est intégré à la gestion des identités et des accès AWS (IAM) et recommande une politique IAM la moins privilégiée pour toutes les ressources utilisées dans votre flux de travail. Step Functions prend en charge les points de terminaison d'un VPC (VPCE) avec AWS PrivateLink. Ceci vous permet d'accéder à AWS Step Functions à partir de fonctions AWS Lambda compatibles VPC et d'autres services AWS sans devoir passer par l'Internet public. En savoir plus sur la sécurité et l'authentification de Step Functions.

Conformité

AWS Step Functions est un service éligible HIPAA. Il peut donc être utilisé avec des applications contenant des informations relatives à la santé, telles que des informations de santé personnelles (PHI). Step Functions est également conforme aux mesures SOC (System and Organization Control), et les résultats de ces audits tiers sont disponibles sur le site Conformité SOC AWS. AWS Step Functions respecte également d'autres normes de conformité courantes. Découvrez le périmètre de conformité en consultant le site Sécurité du cloud AWS.

Facturation à l'utilisation

Avec AWS Step Functions, vous payez pour chaque transition d'un état à l'autre. La facturation est mesurée par la transition d'état, et vous ne payez pas pour le temps d'inactivité, indépendamment de la durée de chaque état (jusqu'à un an). Cela permet à Step Functions de rester rentable, car vous pouvez passer de quelques exécutions à des dizaines de millions. En savoir plus sur la tarification de Step Functions.