Guias e relatórios

Black Friday: como garantir um sistema estável

Contar com um sistema estável é crucial para a Black Friday, para trazer resultados e não queimar a marca com o cliente

Bruno Stemposki  ·  Adyen
21 outubro, 2024
 ·  6 minutos
Pessoas trabalhando juntas em ambiente de escritório

Após o desempenho abaixo do esperado na Black Friday 2023, espera-se uma recuperação gradual na edição deste ano. Uma coisa, porém, continua igual: a pulga atrás da orelha de todo varejista ao chegar a Black Friday: será que meu negócio está pronto?

E chegar a uma resposta confiável para essa pergunta é algo bastante complexo. Isso porque na maioria das vezes o raciocínio precisa levar em conta os mais diversos fatores, como disponibilidade de produtos, logística de envio, além de um marketing bem feito com ofertas relevantes para a data. Contudo, ainda que todos esses pontos sejam importantes para o sucesso de uma estratégia de Black Friday, contar com uma boa infraestrutura de TI é vital para manter a estabilidade das operações do ecommerce.

É inegável que a complexidade aumenta quando há um grande volume de compras concentradas em um curto espaço de tempo. Por isso, não basta investir em servidores e esperar que tudo corra perfeitamente. É preciso também olhar com cuidado para a parte de arquitetura de sistemas, incluindo a estratégia de utilização de servidores e armazenamento de dados.

Se para alguns pode parecer excesso de zelo, vale destacar que uma experiência negativa pode afastar novos clientes e resultar em perda de vendas. Então, trago aqui alguns princípios de arquitetura que todo negócio precisa levar em conta para não ficar fora do ar e entregar uma boa experiência na data mais concorrida do varejo.

Dividir para conquistar

A popularização dos servidores em nuvem é de grande ajuda para os varejistas em períodos como a Black Friday e o Dia das Mães. Com o autoscaling, é possível aumentar e diminuir os recursos computacionais sendo utilizados pelo sistema de forma automática, levando em conta a demanda dos usuários. Ou seja, quando muitos clientes acessam e compram online, o ecommerce automaticamente aciona mais servidores para lidar com aquele pico. Mas de nada adianta contar com a tecnologia sem que haja uma boa estratégia de arquitetura por trás.

Um primeiro ponto importante é a forma como se escalona a utilização de servidores, que pode ser feita de forma vertical e horizontal. Na primeira, há uma adição direta de poder de processamento (tanto por CPU quanto por memória RAM) no servidor utilizado. Essa é a forma mais tradicional de escalonamento, já largamente implementada antes da adoção em massa de servidores em nuvem. Na outra, a abordagem é buscar aumentar o número de servidores, e assim dividir a carga de trabalho.

Para ficar mais claro, podemos fazer uma analogia com os caixas de um supermercado. O escalonamento vertical seria o mesmo que manter um só caixa aberto, mas contratar alguém mais rápido para realizar as cobranças. Já o horizontal corresponderia a abrir mais caixas para absorver a demanda, tendo vários processos correndo em paralelo e podendo recrutar mais funcionários sempre que necessário. Por isso, o escalonamento horizontal é o mais indicado: além de ser mais barato, ele diminui a dependência de um só servidor.

Ainda no que diz respeito à arquitetura, além do escalonamento horizontal também é importante analisar como você está guardando as informações de navegação dos consumidores. O melhor é que essas informações não sejam todas armazenadas em um servidor específico, mas sim distribuídas em diferentes sistemas. Assim, se houver um problema com um servidor, você não corre o risco de perder todas as compras em andamento neste servidor específico.

Vale analisar quais dados não são tão sensíveis e podem ser guardados em cookies do lado do comprador, por exemplo, e quais são mais complexos e precisam ser armazenados do seu lado. Em termos técnicos, é sempre melhor optar por uma arquitetura que seja stateless, e não statefull.

Armazenamento inteligente

Todo ecommerce conta com uma série de informações que precisam ser armazenadas. Mas quando tudo é guardado no backend, parte do sistema que é mais difícil escalar, é provável que surja um gargalo na operação

Existem dois passos que podem ajudar a evitar esse tipo de problema. O primeiro é analisar quais dessas informações são estáticas, ou seja, não mudam. Aqui entram landing pages, imagens e outros tipos de arquivo. Para não sobrecarregar o backend sem necessidade, vale procurar serviços especializados em cacheamento, os chamados CDNs (content delivery network, na sigla em inglês), que entregam isso de forma fluída e deixam você se concentrar nas informações mais relevantes para o seu negócio.

Um segundo passo seria então identificar quais das informações dinâmicas são frequentemente atualizadas e quais são mais estáveis. A dica é guardar as últimas no sistema de frontend mesmo, e só manter as primeiras no backend. Assim você diminui a dependência dos servidores de backend e evita eventuais gargalos.

Estratégia para evitar gargalos

Imagine um sistema de engrenagens encadeadas. À primeira vista, o processo parece eficiente, certo? Mas do ponto de vista de sistemas, ele é falho. Isso porque se uma das engrenagens emperrar, o processo inteiro é interrompido.

O mesmo funciona para o ecommerce, principalmente em datas de pico de demanda. O melhor nesses casos é ter uma operação desacoplada que funcione com filas de processamento: quando uma termina, começa a outra. Se há um problema em uma das partes, as outras não são afetadas.

Vamos imaginar que um ecommerce tenha problemas com o processamento de pagamentos na Black Friday. Em um sistema organizado como as engrenagens, tudo pararia: os consumidores sequer conseguiriam fazer pedidos e o site poderia até sair do ar. Já no segundo modelo, a empresa conseguiria continuar a receber e guardar os pedidos, que entrariam em uma fila para serem processados depois que o consumidor concluísse a compra. Assim, a experiência de compra não seria prejudicada e a equipe de infraestrutura conseguiria resolver o problema sem precisar lidar com o caos de um eventual site fora do ar.

Nas semanas que antecedem a Black Friday, é normal que toda a operação do ecommerce passe por uma lupa. Mas nunca é demais reforçar a importância do monitoramento em tempo real, inclusive da performance dos servidores. Pode parecer óbvio, mas por mais que você tenha uma equipe experiente e siga as melhores práticas de arquitetura, treino é treino, jogo é jogo. Ou seja, só monitorando tudo de perto você consegue fazer o ajuste fino e identificar problemas de performance, que podem ser causados por uma alteração recente na plataforma.

Nesse sentido, é importante ir além do uso de CPU e da memória RAM. Vale acompanhar também os processos, a quantidade de transações recebidas, as etapas que estão com boa performance, o número de pedidos autorizados e eventuais quedas. Imprevistos podem acontecer tanto dentro do seu sistema quanto com parceiros, e só fazendo do monitoramento também uma prioridade é possível resolver essas questões rapidamente.

Temos que lembrar que, para o consumidor, muitas vezes a experiência de compra se resume em sucesso ou frustração. Por isso, a arquitetura de sistemas é parte fundamental da equação e deve ser levada em conta com antecedência, para que mudanças sejam realizadas em tempo hábil. Afinal, depois de tanto trabalho de planejamento, não dá para perder vendas nem afastar clientes devido à instabilidade do sistema.

Inscreva-se para receber nossa newsletter

Mande sua solicitação

Eu confirmo ter lido a Política de Privacidade da Adyen e concordo que meus dados sejam utilizados como descreve o documento.