Como tornar os sites de desenvolvimento Magento 2 rápidos?

18

Desliguei todos os caches e configurei o modo de implantação para desenvolvimento. Portanto, meus sites de desenvolvimento Magento 2 em todas as máquinas são muito lentos se comparados aos sites Magento 1.x.

É normal para o Magento 2?

Quais são as configurações de servidor e Magento que devemos usar nos sites de desenvolvimento Magento 2 para que ele tenha velocidade máxima?

Atualizar:

No mac para desenvolvimento local, consegui acelerar o site desativando o opcache, pois havia um problema de configuração.

codelogn
fonte
Instale o Redis para substituir o cache de arquivos de back-end. E use o memcache para sessões php. Ative o cache e desative as seções de cache que você não deseja ativar ao trabalhar em uma tarefa específica. Se você estiver estilizando apenas o tema, use o relógio pesado e ative todo o cache. Como configurar está na documentação oficial do magento 2.
obscuro
Redis é inútil a menos que você tem 100k + produtos
Claudiu Creanga
Também estou sofrendo de desenvolvimento lento na janela local do PC. De acordo com a sua experiência, seria melhor para mim iniciar o desenvolvimento local no Ubuntu ou Linux Mint? e qual configuração você recomenda?
Jai

Respostas:

12

Você pode usar esta caixa vagrante https://github.com/EcomDev/fast-hypernode .

Eu uso e é bem rápido. No modo desenvolvedor, com o cache desativado e o xdebug, a atualização da página dura cerca de 2-3 segundos.

Ou você pode usar a caixa vagrant fornecida pela magestead: http://www.magestead.com/

  • use php7.
  • use gulp para gerar css e js (mais rápido que o grunhido). Você pode tentar a configuração já criada pelo snowdog (pronto em 2 minutos): https://github.com/SnowdogApps/magento2-frontools
  • use 3gb de ram se estiver testando.
  • desative apenas o cache necessário . Se você está executando o frontend, não precisa desativar nenhum cache.
  • use livereload ou browsersync para o desenvolvimento de front-end, para que você não precise recarregar as páginas.

Entenda o que os comandos magento fazem e quando executá-los. Se você estiver correndo muito setup:static-content:deploy, ficará louco vendo esses pontos. Grunt ou gulp não sabem sobre o @magento_import; é por isso que quando você adiciona ou remove arquivos, é necessário executar o dev:source-theme:deployque é muito mais rápido que o anterior.

O que não melhora:

A menos que você tenha mais de 100 mil produtos, o redis não faz diferença; portanto, não se preocupe ( http://www.developers-paradise.com/wp-content/uploads/2016/05/05-Yaroslav-Rogoza-Magento-2-performance- comparação-em-ambientes-diferentes.pdf ).

Atualmente, devido ao modo como o magento2 usa o requirejs (2mb de js), o http2 também não faz diferença.

Claudiu Creanga
fonte
Também estou sofrendo de desenvolvimento lento na janela local do PC. De acordo com a sua experiência, seria melhor para mim iniciar o desenvolvimento local no Ubuntu ou Linux Mint? e qual configuração você recomenda?
Jai
@ Jaai desculpe, não tenho experiência com hortelã. Eu uso mac e ubuntu.
Claudiu Creanga
Senhor ... Posso esperar uma boa velocidade de desenvolvimento do magento 2 ... se eu usar o Vagrant na minha janela 7 (i5 + 12Gb de RAM) Ou devo ir ao ubuntu com esta configuração do sistema porque a janela é frustrante e lenta no desenvolvimento
Jai
1
@Jai Windows está ok. Você deve procurar por 2-3 segundos de atualização no modo desenvolvedor com alguns dos caches ativados. verifique a rapidez com que este github.com/alankent/docker-gsd está no seu computador e aponte para essa velocidade. pois eu vagabundo recomendar hypernode packagist.org/packages/byteinternet/hypernode-vagrant
Claudiu Creanga
Obrigado por sua sugestão. Vou implementar sua recomendação e você acha que o desenvolvimento magento pode ser feito rapidamente no ubuntu e no Mac, em comparação com o windows?
Jai
7

Dependendo do tipo de desenvolvimento que você planeja fazer, pode ser que a mudança para a compilação de css no lado do cliente melhore significativamente a velocidade dos sites de desenvolvimento

Lojas> Configuração> Avançado> Desenvolvedor> Fluxo de trabalho de desenvolvimento front-end

Mudar para o lado do cliente menos compilação

bjornredemption
fonte
Essa configuração parece ter sido movida no Magento 2.2. Alguma dica sobre onde encontrá-lo agora?
Fritzmg
1
docs.magento.com/m2/ee/user_guide/system/... gostaria de verificar se o seu site está em modo de desenvolvedor como não é visível se não
bjornredemption
Sim, não estava em modo de desenvolvedor, thx :)
fritzmg
0

Verifique também se a mesclagem de JS / CSS está desabilitada quando, no modo de desenvolvedor, isso realmente atinge o desempenho, o teste mostra que as velocidades podem cair de 20 a 30 segundos para 2 a 3 segundos.

Pode parecer óbvio fazer isso no modo de desenvolvedor, mas, se esquecido, pode levar a um ambiente incrivelmente lento, pois eu havia copiado um ambiente de produção para desenvolver e perdi isso por um tempo.

Atualizar

Este parece ser um problema que estava me afetando nas versões 2.1.7 a 2.1.9 e parece corrigido no Magento 2.2.X

harri
fonte
esta informação parece errada. A velocidade não deve cair com merge
ladle3000
@ ladle3000 Além disso, você realmente não gostaria de mesclar e reduzir no desenvolvimento, apenas torna mais difícil ver quais arquivos precisam ser alterados para modificações de CSS / JS de qualquer maneira.
Harri
Eu vejo seus pontos. Eu acho que talvez porque eu tenha migrado diretamente para o 2.2, eu nunca enfrentei isso. Em qual versão você está?
precisa saber é o seguinte
Isso pode ser corrigido agora na versão 2.2.0, mas parece apenas uma etapa extra. Eu tentei testar esta manhã, mas quando eu ativo no modo de desenvolvedor, ele ainda parece estar desativado? Im em 2.2.3 agora
harri
0

Desative os seguintes caches para não precisar executar os comandos da CLI para limpar o cache.

CONFIG
LAYOUT_GENERAL_CACHE_TAG
BLOCK_HTML
FPC
rupi
fonte
0

A principal razão pela qual o magento2 é lento no modo desenvolvedor está relacionado a milhares de arquivos estáticos e compilados gerados em tempo real.

Existem 3 soluções para isso:

  • Monte o diretório inteiro com o NFS (o SSD ainda é obrigatório).

  • Monte apenas o diretório do aplicativo (seja qual for o seu hardware, ele funcionará bem), mas você perderá o acesso ao diretório / vendor na sua máquina host.

  • Monte o projeto inteiro com o rsync e exclua os diretórios onde os arquivos são gerados (pub / estático, gerado / código etc ...).

Você pode experimentá-lo aqui: https://github.com/zepgram/magento2-fast-vm/

Benjamin Calef
fonte
0

O Opcache dá um impulso importante ao desempenho, apenas não se esqueça de ativar a validação do carimbo de data / hora para evitar a atualização do cache ao modificar arquivos

opcache.validate_timestamps = On
Choussamaster
fonte
-4

Para aumentar a velocidade da loja Magento 2, siga estas etapas:

  • Primeiro Verifique se você atendeu a todos os requisitos de sistema e servidor.
  • Atualize o Magento para sua versão mais recente.
  • Habilitado o cache de verniz
  • Habilitou as categorias e produtos simples - otimizar imagem, Javascript e CSS
  • Configurar CDN
  • Sempre use extensões livres de erros e tema leve.
Syed Muneeb Ul Hasan
fonte