Feriado de 2014: Nos bastidores com a Bazaarvoice Engineering
Publicados: 2015-01-07A Bazaarvoice Engineering foi construída com base na capacitação de nossas equipes talentosas para possuir todos os aspectos da prestação de serviços aos clientes, do começo ao fim. Para o nosso maior evento do ano, o fim de semana Black Friday / Cyber Monday: cada equipe de engenharia constrói suas cargas de tráfego projetadas, seu plano de teste de carga, seu plano de congelamento de código e cada um é responsável pela execução e relatório de resultados de prontidão. Esta preparação começa há mais de 7 meses a partir da Black Friday.
A obra começa em abril
Enquanto muitas pessoas estão pensando em sua viagem à Disneylândia ou à praia, a Bazaarvoice Engenharia está começando os preparativos para o nosso maior evento do ano: Black Friday / Cyber Monday. Há muitos detalhes para trabalhar e muita preparação na loja. É quando nossos esforços de planejamento de sistemas em grande escala começam, pois reavaliamos a capacidade geral do sistema à luz do crescimento projetado do tráfego em sites de comércio eletrônico e marcas em toda a nossa rede. Nossas equipes analisam padrões de tráfego detalhados, crescimento do tráfego da Web, crescimento de conteúdo gerado pelo usuário, capacidade de armazenamento e muito mais. Além de nossos próprios sistemas, avaliamos sistemas de terceiros com os quais nos integramos e realizamos reuniões com suas equipes de liderança para ajudá-los a entender as melhorias necessárias antes que o grande tráfego de fim de ano chegue.
A partir da avaliação inicial, fica claro que temos vários projetos importantes a serem concluídos para estarmos prontos para as próximas férias. Então, enquanto o verão do Texas está começando a esquentar em maio, iniciamos nossas reuniões semanais de planejamento da Black Friday e as equipes começam a trabalhar. Existem grandes projetos de infraestrutura para ampliar o que chamamos de “Display”, os sistemas que atendem às solicitações de front-end de meio bilhão de visitantes únicos por mês. Há mais trabalho a fazer para melhorar ainda mais os feeds de dados que enviamos aos nossos clientes todos os dias. Existem novas ferramentas de teste de carga a serem criadas para novas partes de nossa plataforma. Novos painéis em tempo real estão planejados para melhorar nossa capacidade de visualizar rapidamente o estado atual de todos os nossos serviços. Por fim, há processos e canais de comunicação aprimorados antes e durante a alta temporada que precisam ser planejados e implementados na empresa e em nossos clientes. Cancele essas férias!
A calmaria antes da tempestade
Com o tráfego recorde projetado para 2014 e com um número significativo de novos serviços em produção, ficou claro que precisávamos de uma capacidade de teste de carga expandida. Construímos um novo ambiente de teste virtual massivo onde todas as equipes implantarão e dimensionarão seus serviços, assim como faremos na produção quando chegar a hora. As novas ferramentas de teste podem simular com muita precisão os padrões reais de tráfego dos compradores e, como uma mangueira de incêndio, aumentamos o volume e testamos todos os serviços juntos. Além do teste de carga, cada equipe participa do “Game Day”, onde eliminamos intencionalmente os serviços direcionados para garantir que possamos detectar, reagir e recuperar falhas em todo o sistema. Cada equipe publica todos os seus resultados e assina – estamos prontos.
À medida que a Black Friday se aproxima, semanas à frente já estamos criando novos servidores virtuais na nuvem. Uma coisa que aprendemos no ano passado, mesmo que você tenha reservado capacidade na nuvem, se você tentar ativar servidores pouco antes da Black Friday, ainda pode não haver capacidade disponível. Mesmo enquanto aproveitamos o almoço de Ação de Graças da nossa equipe na semana anterior, já vemos períodos de tráfego dobrando.

"Dia de jogo"
O Dia de Ação de Graças é uma época maravilhosa do ano, repleta de família, comida, futebol e, para a equipe de engenharia da Bazaarvoice, gráficos de desempenho do sistema, horários de chamadas, alertas de pager e salas de bate-papo. A central de comando é nossa “Sala de Incidentes” em nossa ferramenta HipChat. Como o resto do país está curtindo peru e kickoffs, nosso dia de jogo é online. Aparentemente, o país gosta de um pouco de compras online com seu futebol. Faça isso um monte de compras.
Nosso monitoramento está valendo a pena, detectamos muitos problemas e ajustamos a capacidade antes que qualquer cliente com problemas seja visto. O Dia de Ação de Graças e a sala de bate-papo estão cheios de engenheiros de todas as equipes prontos para o caso de ocorrer um problema. A cada hora os pedidos por segundo parecem bater um novo recorde. E, inevitavelmente, há um problema na noite de Ação de Graças em um dos muitos serviços, mas graças ao design do nosso sistema, a taxa de erros é <0,1%. Ainda assim, os engenheiros trabalham até depois da meia-noite da noite de Ação de Graças para resolver completamente o problema.
À medida que o fim de semana de férias avança, vemos o tráfego crescer para mais de 6 vezes o volume normal e, quando o tráfego para nossa plataforma de big data atinge 30.000 por segundo, todos ficamos empolgados. Na sala de bate-papo, nosso gerente de incidentes publica gráficos de nossos painéis periodicamente e a equipe conversa com saudações de férias e gifs divertidos para manter o clima leve. A Black Friday chegou e está maior do que nunca.
A cada hora, enviamos e-mails de status de saúde para a empresa para aqueles que não estão na sala de bate-papo e podemos ver um aumento significativo nas visualizações de página e no tráfego da API em relação ao mesmo período do ano passado. Alguns problemas continuam a surgir durante o fim de semana, mas muito poucos são visíveis para o cliente e as equipes respondem rapidamente, adicionando recursos de serviço, ativando novos serviços ou aumentando os limites. A equipe de engenharia trabalha com a equipe de suporte de DevOps e nossa excelente equipe de atendimento ao cliente para garantir que o processo de comunicação pré-planejado esteja funcionando e todos estejam informados ao longo do caminho. Como dizemos na BV – uma equipe, um sonho! Enquanto isso, o tráfego para nossa plataforma de big data atinge 37.000 solicitações por segundo e, eventualmente, atinge o pico ao norte de 50.000 rps.
384 milhões de visualizações de página
No momento em que a Cyber Monday chega, o aumento do tráfego parece a nova norma. A equipe está de volta fisicamente ao escritório, mas você pode dizer que o estresse do “Feriado” é temperado pelo alívio que fizemos. Então, o que fizemos exatamente? Bem, só na Black Friday, atendemos 384 milhões de visualizações de página para mais de 73 milhões de visitantes únicos. Vimos mais de 222 milhões de visitantes únicos durante este período de férias, um aumento de 38% em relação ao ano passado, e atendemos 7,7 bilhões de impressões gerais, um aumento incrível de 42% em relação ao ano passado.
Em nosso desejo incessante de melhorar, já tivemos uma retrospectiva e pensamos em ideias de como podemos melhorar para o próximo ano, mas estou muito orgulhoso de como essa equipe planejou, preparou, executou, respondeu e entregou em um serviço de classe mundial para nossos clientes. Realmente esta é a equipe mais dedicada e focada no cliente que tive o privilégio de liderar em minha carreira, e já estamos ansiosos para grandes coisas por vir em 2015.
