SUS03-BP01 Otimizar o software e a arquitetura para trabalhos assíncronos e programados
Use software eficiente e padrões de arquitetura, como orientado a filas, para manter uma alta e consistente utilização dos recursos implantados.
Antipadrões comuns:
-
Provisione em excesso os recursos em sua workload na nuvem para atender a picos imprevistos na demanda.
-
Sua arquitetura não separa remetentes e destinatários de mensagens assíncronas por um componente de sistema de mensagens.
Benefícios do estabelecimento desta prática recomendada:
-
Padrões eficientes de software e arquitetura minimizam os recursos não utilizados em sua workload e melhoram a eficiência geral.
-
Você pode dimensionar o processamento independentemente do recebimento de mensagens assíncronas.
-
Por meio de um componente de mensagens, você relaxou os requisitos de disponibilidade que podem ser atendidos com menos recursos.
Nível de exposição a riscos quando esta prática recomendada não é estabelecida: Médio
Orientações para a implementação
Use padrões de arquitetura eficientes, como arquitetura orientada por eventos
Entenda os requisitos de seus componentes de workload e adote padrões de arquitetura que aumentam a utilização geral dos recursos. Retire os componentes que não são mais necessários.
Etapas da implementação
-
Analise a demanda de sua workload para determinar como responder a ela.
-
Para solicitações ou trabalhos que não exigem respostas síncronas, use arquiteturas orientadas por filas e operadores de escalonamento automático para maximizar a utilização. Aqui estão alguns exemplos de quando você pode considerar a arquitetura orientada por filas:
Queuing mechanism Description Os trabalhos do AWS Batch são enviados para uma fila de trabalhos onde permanecem até que possam ser agendados para execução em um ambiente de computação.
Emparelhamento de Amazon SQS e instâncias spot para criar uma arquitetura eficiente e tolerante a falhas.
-
Para solicitações ou trabalhos que podem ser processados a qualquer momento, use mecanismos de agendamento para processar trabalhos em lote para maior eficiência. Aqui estão alguns exemplos de mecanismos de agendamento no AWS:
Scheduling mechanism Description A capacidade do Amazon EventBridge
que permite criar, executar e gerenciar tarefas agendadas em escala. Defina uma programação baseada em tempo para seus crawlers e trabalhos no AWS Glue.
Tarefas agendadas do Amazon Elastic Container Service (Amazon ECS)
O Amazon ECS permite a criação de tarefas agendadas. Tarefas agendadas usam regras do Amazon EventBridge para executar tarefas em um agendamento ou em resposta a um evento do EventBridge.
Configure programações de início e parada para suas instâncias do Amazon EC2 e Amazon Relational Database Service.
-
Se você usar mecanismos de pesquisa e webhooks em sua arquitetura, substitua-os por eventos. Use arquiteturas orientadas por eventos para criar workloads altamente eficientes.
-
Aproveite a a computação sem servidor no AWS
para eliminar a infraestrutura provisionada em excesso. -
Dimensione corretamente componentes individuais de sua arquitetura para evitar recursos ociosos aguardando entrada.
Recursos
Documentos relacionados:
Vídeos relacionados: