A loja Magento aguenta a Black Friday? Só o teste responde
A Black Friday de 2026 cai em 27 de novembro. A pergunta "quantos acessos o Magento aguenta" não tem número universal: a mesma instalação suporta muito mais visitantes quando o cache de página responde quase tudo, e muito menos quando a campanha manda gente direto para busca, filtro e carrinho, que passam pelo PHP.
Por isso eu não aceito "o servidor é bom" como resposta. O caminho tem três etapas: estimar o pico com dado da própria loja, converter o pico em capacidade com a fórmula da Adobe e provar em homologação, com critério de aprovação escrito antes do teste.
Como estimar o pico da loja a partir do ano anterior
O dado mais útil é o log de acesso do servidor na Black Friday passada. Dele saem dois números:
- Pico de requisições por minuto que chegaram ao PHP, sem as que o Varnish ou a CDN responderam do cache e sem arquivos estáticos. É esse tráfego que consome processador.
- Tempo médio de resposta do PHP nesse mesmo minuto.
Em cima disso entra o fator de crescimento, que é decisão da loja: verba de mídia maior, base de e-mail maior, lançamento de coleção. Não existe fator padrão de mercado; use o seu plano comercial. Sem log do ano anterior, parta das sessões na hora de pico da ferramenta de análise e meça em homologação quantas requisições ao PHP uma sessão gera, com folga maior.
Quantos acessos simultâneos o Magento suporta: a fórmula da Adobe
Nas recomendações de hardware, a Adobe diz que um núcleo de CPU atende em torno de duas requisições do Commerce (às vezes até quatro) e dá a fórmula para processar tudo sem formar fila:
N[Cores] = (N[Expected Requests] / 2) + N[Expected Cron Processes]A documentação não fixa unidade de tempo para as requisições esperadas. Como a referência é o que um núcleo atende ao mesmo tempo, eu uso requisições simultâneas no PHP e chego a elas pela relação clássica de filas: simultâneas = requisições por segundo x tempo médio de resposta em segundos.
Exemplo ilustrativo, com números fictícios:
| Etapa | Valor |
|---|---|
| Pico de 2025 no PHP | 1.800 requisições por minuto |
| Fator de crescimento definido pela loja | 1,5 |
| Pico estimado para 2026 | 2.700 por minuto = 45 por segundo |
| Tempo médio de resposta no pico | 0,4 s |
| Requisições simultâneas | 45 x 0,4 = 18 |
| Processos de cron esperados | 4 |
| Núcleos pela fórmula | 18 ÷ 2 + 4 = 13 |
Agora a parte que só o teste revela: se, sob carga, o tempo médio sobe para 0,8 s, as simultâneas vão a 36 e a conta pede 36 ÷ 2 + 4 = 22 núcleos. Capacidade e velocidade andam juntas, e a conta de mesa não substitui a medição.
Memória também entra. A Adobe cita 256 MB de memória do PHP para servidor que só atende a vitrine: com 22 processos, o teto teórico é 22 x 256 MB = 5.632 MB, cerca de 5,5 GB só de PHP. Para o banco, a mesma página recomenda memória disponível de, no mínimo, perto da metade do tamanho dos dados.
Roteiro do teste de carga em homologação
- Ambiente comparável: homologação com a mesma configuração de servidor, cache e busca de produção e cópia do catálogo real. Máquina menor exige conta de proporção e folga maior.
- Fluxos de compra com peso real: home, categoria com filtro, busca, produto, carrinho e checkout até antes da captura do pagamento, na proporção que o seu analytics mostra.
- Cache aquecido antes de medir, como estará no dia.
- Degraus de carga: 50%, 100% e 150% do pico estimado, com alguns minutos em cada degrau.
- Teste de estresse no fim: subir além de 150% até a loja degradar, para saber onde fica o limite e qual peça quebra primeiro.
- Nada de pedido real: gateway em modo de teste e e-mails transacionais desligados ou desviados.
Teste em produção, só com janela combinada com a hospedagem e com a CDN: tráfego sintético em volume pode ser bloqueado como ataque. No Adobe Commerce na nuvem, o modelo de responsabilidade compartilhada da Adobe põe o teste de performance da aplicação customizada na conta do lojista.
As métricas que aprovam ou reprovam o teste
O critério de aprovação é escrito antes do teste, com os limites que a loja aceita. Estas são as quatro métricas que eu olho em cada degrau:
| Métrica | Onde medir | Sinal de reprovação | Primeira ação |
|---|---|---|---|
| Tempo de resposta p95 | ferramenta de carga | acima do limite combinado em busca, carrinho ou checkout | revisar blocos que desligam o cache, consultas lentas e extensões no fluxo |
| Taxa de erro | ferramenta de carga e log do servidor | respostas 5xx ou tempo esgotado acima do limite | achar o primeiro componente que falha: PHP, banco, busca ou cache |
| Fila do PHP-FPM | página de status do FPM | listen queue acima de zero de forma sustentada ou max children reached subindo | aumentar núcleos e processos juntos, com memória para isso |
| CPU do banco | monitoramento do servidor de banco | uso alto sustentado com o PHP esperando | índice, consulta de extensão e memória do banco |
O p95 é o tempo abaixo do qual ficam 95% das requisições e mostra o cliente que a média esconde. Na documentação do PHP, listen queue é o número de requisições esperando um processo livre, e max children reached indica se o limite de processos já foi atingido. Reprovou? Corrija o primeiro gargalo e rode de novo: três semanas dão para duas ou três rodadas.
Preparar o Magento para a Black Friday: o que pedir ao suporte agora
- O pico estimado por escrito, com a origem do dado e o fator de crescimento aprovado por você.
- A conta de núcleos e de memória, com a fórmula da Adobe.
- A data do primeiro teste e da nova rodada depois das correções.
- Relatório por degrau com p95, taxa de erro, fila do PHP-FPM e CPU do banco.
- Plano de escala: se faltar servidor, quem contrata, em quanto tempo fica pronto e quem testa de novo.
Se o teste mostrar que o gargalo é tempo de resposta, e não capacidade, a decisão passa a ser de otimização, e aí vale a conta de retorno de otimização de performance no Magento. Performance, com Varnish, Valkey ou Redis e OpenSearch, faz parte do suporte Magento 2.
Perguntas frequentes
Quantos acessos simultâneos o Magento suporta?
Não existe número fixo: depende de quanto o cache de página responde e do tempo de resposta do PHP. A Adobe estima que um núcleo atende em torno de duas requisições do Commerce e usa a fórmula núcleos = requisições esperadas ÷ 2 + processos de cron. O teste confirma o número da sua loja.
Como dimensionar o servidor do Magento para o pico?
Pegue o pico de requisições por minuto no PHP na última Black Friday, aplique o fator de crescimento, converta em requisições simultâneas com o tempo médio de resposta e use a fórmula de núcleos da Adobe. Depois confira a memória e valide em homologação.
Posso fazer teste de carga direto na loja em produção?
Só com janela combinada com a hospedagem e com a CDN, fora do horário de venda e sem gerar pedido real. Tráfego sintético em volume pode ser bloqueado como ataque ou derrubar a loja de verdade. O caminho seguro é uma homologação comparável com a produção.
Qual a diferença entre teste de carga e teste de estresse em loja virtual?
O teste de carga verifica se a loja atende o pico estimado dentro dos limites combinados. O teste de estresse passa desse pico de propósito até a loja degradar, para descobrir onde está o limite e qual componente falha primeiro. Os dois se completam.
Fontes oficiais
- Hardware recommendations (Adobe Experience League)
- Shared responsibility security and operational model (Adobe Experience League)
- FPM status page (PHP.net)