Alex Junio
Voltar para o Blog
Magento

Como melhorar a velocidade do Magento 2 | Dicas e Otimizações 2025

admin

admin

Engenheiro Cloud & DevOps

Publicado em

07/02/2025

Compartilhe

Introdução a otimização Magento 2

Então você tá buscando por otimização magento 2 ? Seja bem vindo!

Desde 2014 atuo com gerenciamento de hospedagem Magento, passando pelas versões mais antigas como o Magento 1.5 até as atuais versões do Magento 2, sempre acompanhando de perto a evolução da plataforma e as mudanças necessárias para garantir alta performance e estabilidade.

Neste artigo, vou compartilhar conhecimentos atualizados e práticos que podem ser aplicados tanto por desenvolvedores quanto por profissionais de infraestrutura, trazendo uma visão clara de quais pontos realmente fazem diferença no dia a dia de uma loja online.

O objetivo é fornecer um guia que pode ser adaptado à realidade de cada projeto — desde pequenos negócios até grandes operações de e-commerce que exigem escalabilidade.

Antes de entrar nos ajustes técnicos, é importante destacar que a escolha da hospedagem é a base de qualquer projeto Magento.

Ela impacta diretamente performance, segurança e escalabilidade. Vamos começar pelas duas principais opções: hospedagem gerenciada, para projetos menores que buscam simplicidade, e hospedagem dedicada, para operações que precisam de mais recursos e crescimento sustentável.

Entendendo sobre hospedagem magento

A hospedagem gerenciada é indicada para quem busca praticidade. Nesse modelo, toda a configuração do servidor já vem pronta: PHP, banco de dados, cache e outros recursos necessários para rodar o Magento ficam disponíveis sem que o lojista ou desenvolvedor precise se preocupar com ajustes manuais. O ponto positivo é a simplicidade, mas em contrapartida há limitações na customização e no controle total do ambiente.
Exemplo: Cloudways, entre outras soluções semelhantes voltadas para pequenos e médios projetos.

Já a hospedagem dedicada oferece liberdade total de configuração. Aqui é possível ajustar cada detalhe do servidor de acordo com a demanda do projeto: memória, CPU, cache, segurança e integrações avançadas. É o modelo mais recomendado para operações de médio e grande porte, que exigem escalabilidade e alta performance.
Exemplos: AWS, Linode, DigitalOcean, entre outros provedores de infraestrutura em nuvem.

Servidor e Infraestrutura

Mesmo a melhor loja Magento pode perder desempenho se o servidor não estiver preparado. Aqui entram os ajustes de infraestrutura que fazem diferença prática no dia a dia:

  • Servidor Web (Nginx)
    Responsável por entregar as páginas da loja, o Nginx deve estar configurado para lidar bem com alto volume de acessos e cache de arquivos estáticos.
  • PHP com PHP-FPM e Opcache
    O PHP é o coração do Magento. Usar PHP-FPM garante que os processos sejam gerenciados de forma inteligente, enquanto o Opcache armazena o código já processado para acelerar o carregamento das páginas.
  • Banco de Dados (MySQL/MariaDB)
    É onde ficam todos os produtos, clientes e pedidos. Ajustar esse componente significa evitar lentidão nas consultas e preparar o banco para suportar picos de acesso.
  • Redis
    Usado tanto para sessões de usuários quanto para cache interno do Magento, o Redis ajuda a reduzir o tempo de resposta da loja.
  • Varnish Cache
    Fundamental para o Full Page Cache, o Varnish acelera o carregamento das páginas públicas, garantindo mais velocidade para o cliente final.
  • Elasticsearch
    Responsável pela busca de produtos, precisa estar otimizado para retornar resultados rápidos e relevantes, mesmo em catálogos grandes.
  • RabbitMQ
    Garante que tarefas em segundo plano (como envio de e-mails ou atualização de índices) não atrapalhem a navegação da loja.
  • CDN (Cloudflare)
    A camada extra que distribui conteúdo pelo mundo, protege contra ataques e melhora a velocidade de carregamento em qualquer região.
image
Github

No Github eu mantenho um repositório com diversos arquivos de configuração otimizados com explicações.

O coração da otimização Magento 2 está no uso inteligente de cache.

Uma loja Magento 2 sem cache se torna lenta e pesada, prejudicando a experiência do usuário e as vendas. O segredo está em combinar diferentes camadas de cache para acelerar o carregamento das páginas e reduzir o esforço do servidor.

  • Full Page Cache (FPC)
    Essencial para armazenar páginas completas e entregá-las de forma imediata ao visitante.
  • Cache de Páginas Públicas e Privadas
    Enquanto páginas públicas (como categorias e produtos) podem ser totalmente cacheadas, páginas privadas (como carrinho e checkout) exigem estratégias específicas para manter a velocidade sem perder personalização.
  • Redis e Varnish em Conjunto
    O Redis armazena dados internos do Magento, enquanto o Varnish acelera a entrega das páginas. Juntos, formam a combinação ideal para lojas de alto desempenho.
  • CDN para Assets Estáticos
    Imagens, scripts e estilos podem ser entregues via CDN, reduzindo a carga do servidor principal e garantindo carregamento rápido em qualquer lugar do mundo.

Garantir a segurança é parte essencial da otimização Magento 2.

Uma loja segura protege os dados dos clientes e mantém o negócio em funcionamento sem interrupções. Abaixo, pontos práticos para implementar:

  • HTTPS e TLS (Nginx e Apache)
    • Configure certificados SSL válidos (Let’s Encrypt ou gerenciados por provedores).
    • Em Nginx:
bash
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers HIGH:!aNULL:!MD5;
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;
  • Em Apache:
bash
SSLProtocol all -SSLv2 -SSLv3 -TLSv1 -TLSv1.1
SSLCipherSuite HIGH:!aNULL:!MD5
Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains"
  • Sempre priorizar TLS 1.3 quando disponível.

Proteção contra DDoS e Bots (Cloudflare WAF)

  • Ative o Web Application Firewall (WAF) para bloquear ataques de injeção, SQLi e XSS.
  • Crie Rules específicas para bloquear países, IPs ou user-agents maliciosos.
  • Configure Rate Limiting para páginas críticas como /checkout e /carrinho.

Backups e Planos de Recuperação

  • Scripts Shell para backups automáticos:
bash
# Exemplos

# Backup do banco de dados
mysqldump -u usuario -p'senha' magento_db > /backup/db_$(date +%F).sql

# Backup do diretório do Magento
tar -czf /backup/code_$(date +%F).tar.gz /var/www/magento
  • Cloud Providers: utilize snapshots automáticos (AWS, DigitalOcean, Linode) para ter recuperação rápida do servidor.
  • Combine backups locais com armazenamento externo (S3, Google Cloud Storage).

A otimização Magento 2 também passa pelo núcleo do sistema e pela qualidade do código.

Não adianta ter um servidor robusto se o Magento estiver mal configurado ou sobrecarregado por extensões desnecessárias. Aqui entram boas práticas para manter o core limpo e eficiente:

Gestão de Extensões

  • Remova módulos que não são usados, pois cada extensão aumenta consumo de recursos.
  • Prefira extensões de fornecedores confiáveis, com suporte ativo e atualizações frequentes.

Compilação e Deploy

  • Utilize os comandos nativos para preparar o ambiente:
bash
php bin/magento setup:di:compile
php bin/magento setup:static-content:deploy -f
  • Isso garante que o Magento carregue código otimizado e estático, reduzindo tempo de resposta.

Indexadores

  • Mantenha os indexadores no modo Update on Schedule, evitando reindexações pesadas em tempo real.
  • Verifique status com:
bash
php bin/magento indexer:status

Boas Práticas de Código

  • Evite consultas diretas ao banco fora do padrão do Magento.
  • Use collections e repositórios nativos para manter compatibilidade e performance.
  • Sempre versionar código em Git, garantindo controle e rollback rápido em caso de falhas.

A otimização Magento 2 também acontece no que o cliente enxerga e sente ao navegar.

Quando falamos em performance, não basta olhar apenas para o servidor: o front-end tem impacto direto na experiência do usuário e no SEO. Ajustes como a minificação de CSS e JavaScript reduzem o peso das páginas, enquanto o lazy load de imagens e vídeos garante que apenas o conteúdo visível seja carregado de imediato, acelerando o tempo inicial de resposta.

Outro ponto importante é o uso do HTTP/2, que permite que múltiplos arquivos sejam transferidos em paralelo, aproveitando melhor cada requisição. Somado a isso, cuidar dos Core Web Vitals — métricas como estabilidade visual e tempo de interação — é fundamental para alcançar melhores posições no Google e aumentar as conversões.

Para complementar, existem módulos que auxiliam nesse processo, como o Amasty Google Page Speed Optimizer, bastante usado para otimizar imagens, aplicar lazy load e reduzir o peso de arquivos estáticos. Além disso, CDNs como a Cloudflare oferecem recursos extras de minificação automática de CSS e JavaScript, combinando segurança, cache global e otimização do front-end em uma única camada.

image
image

https://amasty.com/google-page-speed-optimizer-for-magento-2.html

Em resumo, otimizar o front-end é transformar cada clique do cliente em uma navegação mais fluida, rápida e confiável.

Ajustar o composer.json é uma das formas mais eficazes de reduzir peso e melhorar a performance do Magento.

O arquivo composer.json define todos os módulos, dependências e pacotes ativos na sua instalação Magento 2. Muitas vezes, ele vem carregado com extensões que não são usadas no projeto, aumentando o tempo de build, consumo de recursos e até pontos de falha em atualizações.

Uma prática de otimização Magento 2 é revisar esse arquivo e utilizar a diretiva replace para desativar módulos desnecessários, como integrações de pagamento ou serviços que não fazem parte do seu negócio. Isso reduz código carregado no servidor, melhora o tempo de deploy e simplifica a manutenção.

Outro ponto importante é ajustar a seção require-dev, mantendo apenas ferramentas realmente necessárias no ambiente de desenvolvimento, como PHPUnit, PHPStan e CodeSniffer, mas evitando que esses pacotes sejam instalados em produção.

Além disso, configurações simples como:

bash
{
    "name": "magento/project-community-edition",
    "description": "Magento 2 Community Edition - Otimizado",
    "type": "project",
    "license": [
        "OSL-3.0",
        "AFL-3.0"
    ],
    "config": {
        "preferred-install": "dist",
        "sort-packages": true
    },
    "require": {
        "magento/product-community-edition": "2.4.1",
        "magento/composer-root-update-plugin": "~1.0"
    },
    "replace": {
        "magento/module-sample-data": "*",
        "magento/module-send-friend": "*",
        "magento/module-weee": "*",
        "magento/module-weee-graph-ql": "*",
        "magento/module-tax-import-export": "*",
        "magento/module-swagger": "*",
        "magento/module-swagger-webapi": "*",
        "magento/module-swagger-webapi-async": "*",
        "magento/module-tinymce-3": "*",
        "magento/module-csp": "*",
        "magento/google-shopping-ads": "*",
        "magento/module-google-adwords": "*",
        "magento/module-google-analytics": "*",
        "magento/module-google-optimizer": "*",
        "magento/module-login-as-customer": "*",
        "magento/module-login-as-customer-admin-ui": "*",
        "magento/module-login-as-customer-api": "*",
        "magento/module-login-as-customer-assistance": "*",
        "magento/module-login-as-customer-frontend-ui": "*",
        "magento/module-login-as-customer-log": "*",
        "magento/module-login-as-customer-page-cache": "*",
        "magento/module-login-as-customer-quote": "*",
        "magento/module-login-as-customer-sales": "*",
        "magento/module-login-as-customer-analytics": "*",
        "magento/module-new-relic-reporting": "*",
        "magento/module-adobe-stock-*": "*",
        "yotpo/magento2-module-yotpo-reviews": "*",
        "yotpo/magento2-module-yotpo-reviews-bundle": "*",
        "dotmailer/*": "*",
        "klarna/*": "*",
        "amzn/*": "*",
        "temando/*": "*",
        "vertex/*": "*"
    },
    "require-dev": {
        "phpunit/phpunit": "^9",
        "phpstan/phpstan": "^1.0",
        "friendsofphp/php-cs-fixer": "^3.0",
        "squizlabs/php_codesniffer": "^3.7",
        "phpmd/phpmd": "^2.13",
        "sebastian/phpcpd": "^6.0",
        "dealerdirect/phpcodesniffer-composer-installer": "^1.0",
        "magento/magento-coding-standard": "*"
    },
    "conflict": {
        "gene/bluefoot": "*"
    },
    "autoload": {
        "psr-4": {
            "Magento\\Framework\\": "lib/internal/Magento/Framework/",
            "Magento\\Setup\\": "setup/src/Magento/Setup/",
            "Magento\\": "app/code/Magento/"
        },
        "psr-0": {
            "": [
                "app/code/",
                "generated/code/"
            ]
        },
        "files": [
            "app/etc/NonComposerComponentRegistration.php"
        ],
        "exclude-from-classmap": [
            "**/dev/**",
            "**/update/**",
            "**/Test/**"
        ]
    },
    "autoload-dev": {
        "psr-4": {
            "Magento\\Sniffs\\": "dev/tests/static/framework/Magento/Sniffs/",
            "Magento\\Tools\\": "dev/tools/Magento/Tools/"
        }
    },
    "version": "2.4.1",
    "minimum-stability": "stable",
    "repositories": {
        "0": {
            "type": "composer",
            "url": "https://repo.magento.com/"
        }
    },
    "extra": {
        "magento-force": "override"
    }
}

Esse arquivo:

  • Mantém apenas o core essencial do Magento.
  • Remove módulos não usados via replace (Google Ads, Adobe Stock, Klarna, Yotpo, Temando, Vertex etc.).
  • Deixa o require-dev apenas com ferramentas realmente úteis para desenvolvimento.
  • Usa preferred-install: dist para builds mais rápidos e sort-packages: true para manter dependências organizadas.

Resultado: um Magento mais leve, com menos dependências carregadas em produção e builds mais rápidos.

Desativando módulos não utilizados no Magento 2

O Magento 2 vem com diversos módulos ativos por padrão, incluindo integrações de pagamento, envio, marketing e relatórios que muitas vezes não fazem parte da realidade de cada projeto. Esses módulos consomem recursos, aumentam o tempo de compilação e podem até gerar vulnerabilidades desnecessárias.

Para otimizar a instalação, podemos desativar rapidamente os pacotes que não estão em uso com o comando:

bash
sudo -u www-data php bin/magento module:disable -c {PayPal_BraintreeGraphQl,PayPal_Braintree,Magento_PaypalCaptcha,Magento_PaypalGraphQl,Magento_Paypal,Amazon_Login,Amazon_Payment,Amazon_Core,Magento_DownloadableImportExport,Magento_GroupedImportExport,Magento_InventoryBundleImportExport,Magento_BundleImportExport,Magento_TaxImportExport,Magento_SampleData,Magento_InstantPurchase}

sudo -u www-data php bin/magento module:disable -c {Magento_Csp,Magento_Fedex,Magento_Dhl,Magento_Ups,Magento_Usps,Magento_AdobeStockImageAdminUi,Magento_AdobeStockAdminUi,Magento_AdobeStockAssetApi,Magento_AdobeStockAsset,Magento_AdobeStockImageApi,Magento_AdobeStockImage,Magento_AdobeStockClientApi,Magento_AdobeStockClient,Magento_AdobeImsApi,Magento_AdobeIms}

sudo -u www-data php bin/magento module:disable -c {Klarna_Onsitemessaging,Klarna_Ordermanagement,Klarna_Kp,Klarna_Core,Magento_NewRelicReporting,Magento_CardinalCommerce,Magento_SendFriendGraphQl,Magento_SendFriend,Yotpo_Yotpo,Magento_TwoFactorAuth,Dotdigitalgroup_Chat,Dotdigitalgroup_Email,Vertex_AddressValidation,Vertex_Tax,Magento_WeeeGraphQl,Magento_Weee,Temando_ShippingRemover}

sudo -u www-data php bin/magento module:disable Magento_Persistent Magento_Elasticsearch6 Mageplaza_QuickFlushCache -c

sudo -u www-data php bin/magento module:disable Magento_Swagger Magento_SwaggerWebapi Magento_SwaggerWebapiAsync -c

Depois de executar os comandos, é recomendado rodar:

bash
sudo -u www-data php bin/magento setup:upgrade
sudo -u www-data php bin/magento setup:di:compile
sudo -u www-data php bin/magento cache:flush

Assim, você mantém apenas o que realmente é necessário para o funcionamento da loja, deixando o Magento mais leve, seguro e rápido.

Conte com especialistas para garantir a verdadeira otimização Magento 2.

O Magento 2 é uma plataforma poderosa, mas também exige atenção constante com servidor, segurança, atualizações e performance. Muitos problemas de lentidão, falhas em checkout ou até quedas de loja durante promoções acontecem justamente por falta de gestão adequada da infraestrutura.

É aqui que entra meu trabalho: desde 2014 atuo com hospedagem e otimização de Magento, ajudando lojas virtuais a crescerem com ambientes estáveis, rápidos e preparados para escalar. Ofereço suporte completo e gerenciamento de servidores Magento 2, cuidando desde a configuração inicial até monitoramento contínuo, segurança, backups e ajustes de performance que fazem diferença real no resultado das vendas.

Se você quer ter a tranquilidade de focar no negócio enquanto a parte técnica fica nas mãos de quem entende, entre em contato comigo. Vamos avaliar sua loja, identificar gargalos e preparar um plano sob medida para o seu e-commerce.

admin

Escrito por admin

Engenheiro Cloud & DevOps com mais de 10 anos de experiência construindo e escalando infraestruturas de alto tráfego em AWS, DigitalOcean e Servidores Dedicados.

Conhecer Serviços →

Comentários (4)

Deixe seu comentário

U
Thiago Moreira
Thiago Moreira
Há 2 dias

Excelente artigo, Alex! Estávamos exatamente com esse problema de overprovisioning na nossa startup. Aplicar os Savings Plans salvou quase 30% da nossa conta mensal.

Alex Junio
Alex JunioAutor
Há 1 dia

Fico feliz que ajudou, Thiago! Essa economia faz total diferença no longo prazo. Se precisarem de ajuda para escalar o banco de dados depois, me deem um toque.

Juliana Costa
Juliana Costa
Há 4 dias

Não tinha pensado em usar Spot para as filas do SQS. Existe algum risco do Spot ser finalizado no meio de um processamento pesado de vídeo?

Alex Junio
Alex JunioAutor
Há 4 dias

Sim, Juliana! A AWS te avisa com 2 minutos de antecedência. O segredo é sua aplicação capturar o evento de interrupção e colocar a mensagem de volta na fila (visibility timeout) antes da máquina morrer.

Roberto Freitas
Roberto Freitas
Há 1 semana

Muito bom o conteúdo técnico. Falta só mais detalhes sobre instâncias Graviton.

Carla Mendes
Carla Mendes
Há 1 semana

Sensacional! Usei as dicas de Right-Sizing e deu muito certo no meu e-commerce.