SUS03-BP01 Optimiser le logiciel et l'architecture pour les tâches asynchrones et planifiées - AWS Framework Well-Architected

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.

SUS03-BP01 Optimiser le logiciel et l'architecture pour les tâches asynchrones et planifiées

Utilisez des modèles d’architecture et de logiciels efficaces comme ceux axés sur les files d’attente afin de maintenir une utilisation élevée et constante des ressources déployées.

Anti-modèles courants :

  • Vous mettez en service trop de ressources dans votre charge de travail cloud pour répondre aux pics imprévus de la demande.

  • Votre architecture ne découple pas les expéditeurs et les destinataires de messages asynchrones par un composant de messagerie.

Avantages liés au respect de cette bonne pratique :

  • Des modèles de logiciels et d’architecture efficaces réduisent les ressources inutilisées dans votre charge de travail et améliorent l’efficacité globale.

  • Vous pouvez mettre à l’échelle le traitement indépendamment de la réception de messages asynchrones.

  • Par le biais d’un composant de messagerie, vous avez assoupli les exigences de disponibilité auxquelles vous pouvez répondre avec moins de ressources.

Niveau d’exposition au risque si cette bonne pratique n’est pas respectée : moyen

Directives d’implémentation

Utilisez des modèles d'architecture efficaces, tels que l’architecture axée sur les événements, qui permettent une utilisation uniforme des composants et minimisent le surprovisionnement de votre charge de travail. L’utilisation de modèles d’architecture efficaces réduit au minimum les ressources inutilisées en raison des changements de la demande au fil du temps.

Comprenez les exigences des composants de votre charge de travail et adoptez des modèles d’architecture qui augmentent l’utilisation globale des ressources. Mettez hors service les composants qui ne sont plus nécessaires.

Étapes d’implémentation

  • Analysez la demande pour votre charge de travail afin de déterminer comment y répondre.

  • Pour les demandes ou les tâches qui ne nécessitent pas de réponses synchrones, utilisez des architectures axées sur les files d’attente et des agents de travail de mise à l’échelle automatique afin de maximiser l’utilisation. Voici quelques exemples de situations où vous pourriez envisager une architecture axée sur les files d’attente :

    Mécanismes de mise en file d'attente Description

    AWS Batch files d'attente pour les emplois

    AWS Batch les tâches sont soumises à une file d'attente où elles résident jusqu'à ce qu'elles puissent être planifiées pour être exécutées dans un environnement informatique.

    Amazon Simple Queue Service et instances Amazon EC2 Spot

    Associer des instances Amazon SQS et Spot pour créer une architecture efficace et tolérante aux pannes.

  • Pour les demandes ou les tâches qui peuvent être traitées à tout moment, utilisez les mécanismes de planification afin de traiter les tâches par lots pour plus d’efficacité. Voici quelques exemples de mécanismes de planification sur AWS :

    Mécanismes de planification Description

    Amazon EventBridge Scheduler

    Une fonctionnalité d'Amazon EventBridge qui vous permet de créer, d'exécuter et de gérer des tâches planifiées à grande échelle.

    AWS Glue calendrier basé sur le temps

    Définissez un calendrier basé sur le temps pour vos robots d'exploration et vos tâches dans. AWS Glue

    Tâches planifiées d'Amazon Elastic Container Service (AmazonECS)

    Amazon ECS prend en charge la création de tâches planifiées. Les tâches planifiées utilisent EventBridge les règles d'Amazon pour exécuter des tâches selon un calendrier ou en réponse à un EventBridge événement.

    Instance Scheduler

    Configurez les plannings de démarrage et d'arrêt pour vos EC2 instances Amazon et Amazon Relational Database Service.

  • Si vous utilisez des mécanismes d’interrogation et de webhooks dans votre architecture, remplacez-les par des événements. Utilisez des architectures axées sur les événements pour créer des charges de travail hautement efficaces.

  • Tirez parti du mode sans serveur AWS pour éliminer l'infrastructure surprovisionnée.

  • Dimensionnez les composants individuels afin d’éviter les ressources inactives attendant une entrée.

Ressources

Documents connexes :

Vidéos connexes :

Exemples connexes :