Cursos Magento

Modos de Deploy: O que são e como usá-los?

, ,

04 de setembro de 2018

Uma das primeiras coisas que o novo desenvolvedor Magento deve se familiarizar é com os modos de deploy (deployment modes) presentes no Magento 2.

Se você é aluno do curso de Magento 2, você viu isso no detalhe, na aula 11 com slides e na sua apostila de apoio.

O que é o modo de deploy?

No Magento 2 há diversas formas de se compilar e entregar o conteúdo que é exibido nas chamadas feitas à loja Magento. Cada modo de deploy altera a forma como este conteúdo será compilado, comprimido, processado e entregue.

Cada modo de deploy é útil em uma fase do desenvolvimento e cada um deles tem sua função.

Para saber qual modo de deploy está usando, basta digitar bin/magento deploy:mode:show na raíz do seu Magento.

Quais as diferenças?

Existem 3 modos de deploy no Magento 2. Veja suas principais características:

  • Default mode – não ideal nem para produção, nem para desenvolvimento, mas é um modelo híbrido, padrão de novas instalações
    • Links simbólicos são criados na pasta pub/static e apontam para arquivos em app/code ou app/design.
    • Exceptions não são exibidas na tela (tornando o desenvolvimento mais difícil), mas são logados em var/log.
    • Arquivos estáticos são gerados em tempo de execução e links simbólicos são criados em var/view_preprocessed.
    • Para setar: bin/magento deploy:mode:set default
  • Developer mode – pode trazer riscos de segurança se executado em produção
    • Links simbólicos são criados em pub/static. Você pode usar dev:static-content:deploy para atualizar esses links ou removê-los na mão (mais rápido).
    • Erros são exibidos na tela e o log é muito mais detalhado. Note que o log de debug é desabilitado por padrão mesmo no developer mode.
    • O magento cria o código de plugins (interceptors), factories, etc do mesmo jeito que faz nos outros modos.
    • Baixa performance. (veja como melhorar um pouco a performance no ambiente de desenvolvimento)
    • Para setar: bin/magento deploy:mode:set developer
  • Production mode – ruim pra usar quando estamos desenvolvendo
    • Arquivos estáticos (css, js, etc) devem ser pre-compilados via comando, pois a compilação não acontecerá em tempo real.
    • Erros são apenas logados e nunca exibidos (a menos que você realmente bagunce a “casinha”)
    • Para setar: bin/magento deploy:mode:set production

 

Resumindo

Cada modo de deploy apresenta benefícios diferentes na forma como os arquivos são entregues e compilados. Usar um modo de desenvolvimento não compatível com o ambiente ou com aquilo que está se fazendo, em algum momento lhe causará alguma dor de cabeça.

Em outras palavras, o modo production pode acelerar bastante sua loja Magento em produção, ou atrasar e atrapalhar bastante seu desenvolvimento quando estiver tentando customizar e implementar novas funcionalidades.

 

Imagem principal: Pixabay

Ricardo Martins

Desenvolvedor web há mais de 15 anos, desde 2011 totalmente especializado em Magento, ajudo na criação de conteúdo, e cursos online sobre Magento - hoje com mais de 7000 alunos de 97 países - e criador do módulo PagSeguro Transparente para Magento, usado em mais de 12 mil lojas.

Últimos posts por Ricardo Martins (exibir todos)

Comentários