Este documento no Framework da arquitetura do Google Cloud mostra como planejar o pico de tráfego e iniciar eventos para evitar interrupções nos seus negócios.
Os eventos de pico são eventos importantes relacionados aos negócios que causam um aumento acentuado de tráfego além do valor de referência padrão do aplicativo. Esses eventos de pico exigem escalonamento planejado.
Por exemplo, empresas de varejo com presença on-line podem esperar eventos de pico durante os feriados. A Black Friday, que ocorre no dia seguinte ao Dia de Ação de Graças nos Estados Unidos, é um dos dias mais movimentados para compras do ano. No setor de saúde nos Estados Unidos, os meses de outubro e novembro podem ter eventos de pico devido aos picos no tráfego on-line para registro de benefícios.
Os eventos de lançamento são lançamentos substanciais ou migrações de novos recursos na produção. Por exemplo, uma migração do local para a nuvem ou um lançamento de um novo serviço ou recurso de produto.
Se você estiver lançando um novo produto, poderá esperar um aumento de carga nos sistemas durante e após o anúncio. Esses eventos podem causar aumentos de carga de 5 a 20 vezes (ou mais) em sistemas de front-end. Esse aumento de carga também aumenta a carga nos sistemas de back-end. Geralmente, esses carregamentos de front-end e back-end são caracterizados pelo escalonamento rápido durante um curto período, à medida que o evento é aberto no tráfego da Web. Os eventos de lançamento envolvem uma redução no tráfego para os níveis normais. Essa diminuição é geralmente mais lenta que o aumento até o pico.
Os eventos de pico e de lançamento incluem três etapas:
- Planejamento e preparação para o evento de lançamento ou pico de tráfego
- Como lançar o evento
- Analisar o desempenho e a análise pós-evento
As práticas descritas neste documento podem ajudar a executar cada um desses estágios sem problemas.
Criar um manual geral para os eventos de lançamento e pico
Crie um manual geral com uma visão de longo prazo dos eventos de pico atuais e futuros. Continue adicionando lições aprendidas no documento para que ele possa ser uma referência para futuros eventos de pico.
Planejar seu lançamento e eventos de pico
Planeje com antecedência Criar projeções de negócios para lançamentos futuros e eventos de pico esperados (e inesperados). A preparação do sistema para picos de escala depende da compreensão das projeções de negócios. Quanto mais você souber sobre as previsões anteriores, mais precisas serão as previsões da sua nova empresa. Essas novas previsões são informações fundamentais para projetar a demanda esperada no sistema.
Estabelecer um gerenciamento de programa e um planejamento coordenado (em toda a organização e com fornecedores terceirizados) também é fundamental para o sucesso. Configure essas equipes antecipadamente para que sua equipe de gerenciamento de programas possa definir cronogramas, proteger orçamentos e reunir recursos para infraestrutura extra, suporte para testes e treinamento.
É importante configurar canais de comunicação claros. A comunicação é essencial para todas as etapas de um lançamento ou evento de pico. Discuta os riscos e as áreas de preocupação com problemas antecipados e em forma de enxame antes de se tornarem bloqueadores. Crie a documentação de planejamento de eventos. Condense as informações mais críticas sobre o evento de pico e distribua-o. Isso ajuda as pessoas a absorver informações de planejamento e resolver questões básicas. O documento ajuda a promover a participação de pessoas novas no planejamento de eventos de pico.
Registre seu plano para cada evento. Ao documentar seu plano, faça o seguinte:
- Identifique suposições, riscos e fatores desconhecidos.
- Analise os eventos passados para determinar informações relevantes sobre o próximo evento de lançamento ou de pico. Determine quais dados estão disponíveis e qual valor eles enviaram no passado.
- Detalhe o plano de reversão para eventos de lançamento e migração.
- Analise a arquitetura:
- Documente os principais recursos e componentes de arquitetura.
- Use o framework de arquitetura para analisar todos os aspectos do ambiente em busca de riscos e preocupações em escala.
- Crie um diagrama que mostre como os principais componentes da arquitetura estão conectados. Uma revisão do diagrama pode ajudar você a isolar problemas e priorizar a resolução deles.
- Se apropriado, configure o serviço para usar ações de alerta a fim de reiniciar automaticamente em caso de falha. Ao usar o Compute Engine, use o escalonamento automático para lidar com picos de capacidade.
- Para garantir que os recursos do Compute Engine estejam disponíveis quando você precisar deles, use Reservas. As reservas fornecem um nível muito alto de garantia da capacidade dos recursos zonais do Compute Engine. Você pode usar reservas para garantir que seu projeto tenha recursos disponíveis.
- Identifique as métricas e os alertas que serão rastreados:
- Identifique as métricas da empresa e do sistema para monitoramento do evento. Se alguma métrica ou indicador de nível de serviço (SLIs) não estiver sendo coletado, modifique o sistema para coletar esses dados.
- Verifique se você tem recursos de monitoramento e alerta suficientes e revisou os padrões de tráfego normal e anterior. Verifique se os alertas estão definidos corretamente. Use as ferramentas do Google Cloud Monitoring para ver o uso, a capacidade e a integridade geral dos seus aplicativos e da infraestrutura.
- Verifique se as métricas do sistema estão sendo capturadas com os níveis de monitoramento e alerta de interesse.
- Revise os requisitos de capacidade aumentada com sua equipe de conta do Google Cloud e planeje o gerenciamento de cota necessário. Para mais detalhes, consulte Verifique se as cotas correspondem aos requisitos de capacidade.
- Verifique se você tem níveis de suporte na nuvem apropriados, se a equipe entende como abrir os casos de suporte e tem um caminho de encaminhamento estabelecido. Veja mais detalhes em Estabelecer processos de suporte e encaminhamento para a nuvem.
- Defina um plano de comunicação, um cronograma e as responsabilidades:
- Envolva as partes interessadas multifuncionais para coordenar a comunicação e o planejamento do programa. Essas partes interessadas podem incluir pessoas adequadas de equipes técnicas, operacionais e de liderança, além de fornecedores terceirizados.
- Estabeleça um cronograma não ambíguo contendo tarefas essenciais e as equipes que as pertencem.
- Estabeleça uma matriz de atribuição de responsabilidade (RACI, na sigla em inglês) para comunicar a propriedade de equipes, líderes de equipes, partes interessadas e partes responsáveis.
- Você pode usar o Serviço de gerenciamento de eventos do Suporte Premium para eventos de pico planejados. Com esse serviço, o Customer Care faz uma parceria com sua equipe para criar um plano e oferecer orientações durante o evento.
Estabelecer processos de revisão
Quando o evento de pico de tráfego ou o evento de lançamento terminar, revise o evento para documentar as lições aprendidas. Em seguida, atualize o manual com essas lições. Por fim, aplique o que você aprendeu no próximo evento principal. Aprender com eventos anteriores é importante, especialmente quando destacam restrições para o sistema enquanto estão sob pressão.
Avaliações retrospectivas, também chamadas de post mortems, para eventos de pico de tráfego ou eventos de lançamento são uma técnica útil para capturar dados e entender os incidentes que ocorreram. Faça essa análise para identificar picos de tráfego e eventos de lançamento como o esperado e quaisquer incidentes que tenham causado problemas. À medida que você revisa, adote uma cultura sem culpa.
Para mais informações sobre post mortems, consulte Cultura post mortem: aprendizado desde a falha (em inglês).
A seguir
- Crie uma cultura de automação (próximo documento desta série)
- Explore outras categorias no Framework da arquitetura, como design do sistema, segurança, privacidade e conformidade, confiabilidade, otimização de custos e otimização de desempenho.