SUS02-BP06 Implementar armazenamento em buffer ou controle de utilização para nivelar a curva da demanda - AWS Well-Architected Framework

SUS02-BP06 Implementar armazenamento em buffer ou controle de utilização para nivelar a curva da demanda

O armazenamento em buffer e o controle de utilização nivelam a curva da demanda e reduzem a capacidade provisionada necessária para sua workload.

Antipadrões comuns:

  • Você processa imediatamente as solicitações de cliente embora isso não seja necessário.

  • Você não analisa os requisitos das solicitações de cliente.

Benefícios do estabelecimento desta prática recomendada: nivelar a curva da demanda reduz a capacidade provisionada necessária para a workload. Reduzir a capacidade provisionada significa diminuir o consumo de energia e o impacto ambiental.

Nível de exposição a riscos quando esta prática recomendada não é estabelecida: baixo

Nivelar a curva da demanda pode ajudar você a reduzir a capacidade provisionada para uma workload e a diminuir o respectivo impacto ambiental. Considere a workload com a curva de demanda mostrada na figura a seguir. Essa workload tem dois picos e, para lidar com eles, é provisionada a capacidade de recurso mostrada pela linha laranja. Os recursos e energia usados para essa workload não são indicados pela área abaixo da curva da demanda, mas pela área abaixo da linha da capacidade provisionada, visto que é preciso ter capacidade provisionada para lidar com esses dois picos.

Forma de onda da capacidade provisionada com dois picos distintos que exigem alta capacidade provisionada.

Curva da demanda com dois picos distintos que exigem alta capacidade provisionada.

Você pode usar o armazenamento em buffer ou o controle de utilização para modificar a curva da demanda e atenuar os picos, o que significa menor capacidade provisionada e menor consumo de energia. Implemente o controle de utilização quando seus clientes puderem realizar novas tentativas. Implemente o armazenamento em buffer para armazenar a solicitação e adiar o processamento até um momento posterior.

Diagrama de forma de onda exibindo uma workload com picos atenuados por meio do armazenamento em buffer e do controle de utilização.

Efeito do controle de utilização sobre a curva da demanda e a capacidade provisionada.

Etapas da implementação

  • Analise as solicitações dos clientes para determinar como responder a elas. As perguntas a serem consideradas incluem:

    • Essa solicitação pode ser processada assincronamente?

    • O cliente tem capacidade de repetição?

  • Se o cliente tiver capacidade de repetição, você pode implementar o controle de utilização, que informa à origem que, se ela não puder atender à solicitação naquele momento, deverá tentar novamente mais tarde.

  • Para clientes que não podem realizar novas tentativas, é necessário implementar um buffer para nivelar a curva da demanda. O buffer adia o processamento de solicitações, permitindo que as aplicações executadas em diferentes taxas se comuniquem com eficácia. Uma abordagem baseada em buffer usa uma fila ou um fluxo para aceitar mensagens de produtores. As mensagens são lidas pelos consumidores e processadas, permitindo que as mensagens sejam executadas na taxa que atenda aos requisitos de negócios dos consumidores.

  • Analise a demanda geral, a taxa de alteração e o tempo de resposta necessário para dimensionar adequadamente o controle ou buffer necessário.

Recursos

Documentos relacionados:

Vídeos relacionados: