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

SUS03-BP01 Optimiser les logiciels 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 de risque exposé si cette bonne pratique n'est pas respectée : Moyenne entreprise

Directives d'implémentation

Utilisez des modèles d'architecture efficaces tels que l'architecture axée sur les événements afin de bénéficier d'une utilisation uniforme des composants et réduire autant que possible le surprovisionnement dans 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. Retirez 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 :

    Queuing mechanism Description

    Files d'attente de tâches AWS Batch

    Les tâches AWS Batch sont soumises à une file d'attente de travail là où elles résident jusqu'à ce que leur exécution puisse être planifiée dans un environnement de calcul.

    Amazon Simple Queue Service et instances Spot Amazon EC2

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

  • 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 planification des mécanismes sur AWS :

    Scheduling mechanism Description

    Amazon EventBridge Scheduler

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

    Planification temporelle pour AWS Glue

    Définissez une planification temporelle pour les crawlers et les tâches dans AWS Glue.

    Tâches planifiées Amazon Elastic Container Service (Amazon ECS)

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

    Instance Scheduler

    Configurez des calendriers pour les débuts et les arrêts des instances Amazon EC2 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.

  • Utilisez le sans serveur sur AWS afin d'éliminer une infrastructure surprovisionnée.

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

Ressources

Documents connexes :

Vidéos connexes :