Respostas:
Primeiro, determine se a renderização do front-end ou a execução real do script é lenta. Verifique com o console do desenvolvedor em seu navegador o Tempo até o primeiro byte . É quanto tempo o script leva para processar no servidor
Na captura de tela, você pode ver que é bastante baixo (200ms); nesse caso, o problema não estaria no servidor, mas no front-end. Agora, se acabou, digamos, um segundo que você queira otimizar.
Antes de aplicar alguns boosters e cache extra, o que não é uma correção, apenas um patch ou band-aid para ocultar o problema real e tente descobrir exatamente o que é lento. Você pode usar várias ferramentas também para isso.
Consultas lentas
O Magento pode ser bastante pesado no banco de dados, portanto, ativar o Slow Query Log pode ser um bom lugar para começar. Confira este post sobre como ativá-lo. O log mostrará qualquer consulta que demore mais de X segundos.
Profilers
Os criadores de perfil ajudam você a entender o que está acontecendo no seu código. Para Magento, eu recomendaria começar com Aoe_Profiler . Basta instalá-lo e ligá-lo. No front-end, você terá uma saída como esta:
Expanda os resultados e verifique se há grandes blocos vermelhos. Esses são os momentos reais em que uma determinada parte do código foi processada. Fique atento aos módulos de terceiros que estão consumindo muito tempo ou memória.
Outra ótima ferramenta é o fogo preto . Como Aoe_Profiler é um módulo no Magento, ele não mostra os processos php subjacentes e pode falhar em grandes instalações com muitos módulos. Fogo negro é executado no servidor. Com um hackathon, montamos uma caixa Vagrant com fogo preto que você pode usar. Basta colocar seu projeto lá e iniciá-lo. Verifique o site do Black Fire para obter mais informações sobre como usá-lo.
O último é provavelmente o meu favorito: New Relic .
Infelizmente, é um serviço pago, embora eles ofereçam um teste gratuito para contas profissionais. Após instalá-lo no servidor e conectar o perfil, aguarde algumas horas para a chegada dos dados. Verifique se há algum tráfego na loja.
A New Relic também tem um post sobre como depurar o Magento, que eu recomendo. Verifique também o módulo ProxiBlue New Relic para obter dados adicionais do Magento na New Relic.
Basicamente, isso mostrará todos os recursos descritos acima, como consultas lentas, os processos em PHP, etc, e exibirá em gráficos e tabelas fáceis. Isso deve fornecer uma ótima visão sobre qual é o problema em sua instalação.
E a partir daqui Agora que você sabe o que está causando o baixo desempenho, pode avançar para resolvê-lo. Verifique fóruns como este ou o Google para ver a parte ou módulo do Magento lento. Muitos problemas são bem conhecidos e outros já o resolveram antes. Ou, se você não encontrar uma solução, poste sua pergunta aqui e inclua suas descobertas na pergunta
A otimização da velocidade do site no Magento é um tópico muito vasto. Este é um link que pode ajudá-lo,
http://www.gxjansen.com/blog/101-ways-to-speed-up-your-magento-e-commerce-website/
Tomando uma essência disso,
Você precisa se concentrar em dois aspectos: 1. Otimização de front-end 2. Otimização de back-end
Otimização de front-end
Você pode instalar o Fooman Speedster - http://www.magentocommerce.com/magento-connect/speedster-by-fooman.html e ativar o css, js merge
Ative o cache do bloco Magento no admin.
Ativar compactação Gzip
Otimização de back-end
Você pode configurar o Varnish para o cache de página inteira
Ativar complicação no back-end.
Ativar estrutura plana para catálogo (categoria e produtos)
Aqui estão alguns truques que encontrei para ajudar a acelerar o site, que você pode querer experimentar:
Adie o carregamento da imagem adicionando-o ao /template/page/html/head.phtml
<script>
function init() {
var imgDefer = document.getElementsByTagName('img');
for (var i=0; i<imgDefer.length; i++) {
if(imgDefer[i].getAttribute('data-src')) {
imgDefer[i].setAttribute('src',imgDefer[i].getAttribute('data-src'));
} } }
window.onload = init;
</script>
Em seguida, /template/catalog/product/list.phtml
altere os links da sua imagem assim:
<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4AQQATUqB0EhKgAAAAxJREFUCNdj+P//PwAF/gL+3MxZ5wAAAABJRU5ErkJggg==" data-src="<?php echo $this->helper('catalog/image')->init($_product, 'small_image')->resize(135); ?>" width="135" height="135" alt="<?php echo $this->stripTags($this->getImageLabel($_product, 'small_image'), null, true) ?>" /></a>
Outro é "Pre Gzip" todos os seus javascripts e arquivos CSS e depois adicionar isso ao seu .htaccess
.
<ifModule mod_headers.c>
##### serve pre gziped files #####
# Rules to correctly serve gzip compressed CSS and JS files.
# Requires both mod_rewrite and mod_headers to be enabled.
# Serve gzip compressed CSS files if they exist and the client accepts gzip.
RewriteCond %{HTTP:Accept-encoding} gzip
RewriteCond %{REQUEST_FILENAME}\.gz -s
RewriteRule ^(.*)\.css $1\.css\.gz [L,QSA]
# Serve gzip compressed JS files if they exist and the client accepts gzip.
RewriteCond %{HTTP:Accept-encoding} gzip
RewriteCond %{REQUEST_FILENAME}\.gz -s
RewriteRule ^(.*)\.js $1\.js\.gz [L,QSA]
# Serve correct content types, and prevent mod_deflate double gzip.
RewriteRule \.css\.gz$ - [T=text/css,E=no-gzip:1]
RewriteRule \.js\.gz$ - [T=text/javascript,E=no-gzip:1]
</IfModule>
Magento é uma ótima estrutura de comércio eletrônico. Ele tem muitos recursos e você pode realmente criar uma plataforma de comércio eletrônico escalável. Usei o Magento no meu projeto mais recente e enfrentei esse problema de velocidade. Depois de fazer algumas pesquisas e modificações, eu realmente acelerei meu site.
Otimização do servidor
Configurações do Magento
Instale o Redis Cache, o APC Opcode e a extensão de cache de página inteira - Instale aceleradores PHP - Instale o cache Redis para back-end e cache de sessão - Instale o Lesti FPC
Otimização de imagem e YSlow - em média, 56% do peso da página de um site é composto de imagens. A otimização das imagens do produto pode aumentar drasticamente a velocidade das suas páginas, pois isso diminui o tempo de download. - Examine seu site através do gtmetrix ou Pingdom e siga as sugestões de otimização.
Use CDN
Você pode ler detalhes sobre isso no meu site: http://www.ranjeetvimal.com/tips-to-speed-up-magento-1-9-performance/
se você estiver em um ambiente de hospedagem compartilhada, é muito difícil obter uma boa velocidade, pois não há controle total sobre o servidor e o recurso é usado por vários outros sites, mas se você estiver em um servidor dedicado e tiver acesso total de administrador, tente cache de verniz .
outras coisas que você pode fazer -
1. Combine arquivos JS e CSS
Magento admin -> System Configuration -> Developer -> Under “Javascript Settings”, change “Merge Javascript Files” to YES.
Magento admin -> System Configuration -> Developer -> Under “CSS Settings”, change “Merge CSS Files” to YES
2. Ative a compactação de saída, expire cabeçalhos e desative ETags no arquivo .htaccess, consulte este /programming//a/14745165/3114253
Use CDN se possível
Use o recurso Compilação do Magento. É relatado um aumento de desempenho de 25% a 50%: Sistema> Configuração. > Ferramentas> Compilação.
Mostrar menor não. do produto na página de listagem de produtos.
Ativar catálogo simples.
Na interface do administrador do Magento, vá para Sistema> Configuração> Catálogo. Em Frontend, altere Use Flat Catalog Category para YES. Se desejar, em Frontend, altere Use Flat Catalog Product para YES. Limpe o cache.
Se você tentar acelerar seu front-end:
Back-end:
Para aumentar a velocidade do site magento, primeiro você deve digitalizá-lo com www.gtmetrix.com ou Google Page Speed Insights:
então você pode decidir o que pode ser feito. Na maioria dos casos, tudo se resume a:
Tomadas de 34 maneiras de acelerar M1 e M2