Como executar o aplicativo headless go-live

Nesta parte da Jornada do desenvolvedor headless do AEM, saiba como implantar um aplicativo headless, colocando seu código local no Git e movendo-o para o Git do Cloud Manager para o pipeline de CI/CD.

A história até agora story-so-far

No documento anterior da jornada headless do AEM, Como unir tudo: seu aplicativo e seu conteúdo no AEM headless, você aprendeu a usar as ferramentas de desenvolvimento do AEM para unir todas as facetas de seu projeto.

Este artigo se baseia nesses fundamentos para que você entenda como preparar seu próprio projeto headless do AEM.

Objetivo objective

Este documento ajuda você a entender o pipeline de publicação headless do AEM e as considerações de desempenho que você deve conhecer antes de executar seu aplicativo.

  • Proteger e dimensionar o aplicativo antes do lançamento
  • Monitorar o desempenho e depurar problemas

Para preparar o aplicativo headless do AEM para o lançamento, siga as práticas recomendadas descritas abaixo.

Proteger e dimensionar o aplicativo headless antes do lançamento secure-and-scale-before-launch

  1. Configurar a Autenticação baseada em token com suas solicitações da GraphQL
  2. Configurar Armazenamento em cache.

Estrutura do modelo vs Saída da GraphQL structure-vs-output

  • Evite criar consultas que produzem mais de 15 kb de JSON (gzip compactado). Arquivos JSON longos consomem muitos recursos para análise do aplicativo cliente.
  • Evite mais de cinco níveis aninhados de hierarquias de fragmentos. Níveis adicionais tornam difícil para os autores de conteúdo considerar o impacto de suas alterações.
  • Use consultas de vários objetos em vez de modelar consultas com hierarquias de dependência nos modelos. Isso permite maior flexibilidade a longo prazo para reestruturar a saída JSON sem precisar fazer muitas alterações de conteúdo.

Maximizar a taxa de ocorrências do cache CDN maximize-cdn

  • Não use consultas diretas da GraphQL, a menos que esteja solicitando conteúdo ao vivo a partir da superfície.

    • Use consultas persistentes sempre que possível.
    • Forneça TTL CDN acima de 600 segundos para que a CDN armazene em cache.
    • O AEM pode calcular o impacto de uma alteração de modelo em consultas existentes.
  • Separe arquivos JSON/consultas GraphQL que possuem altas taxas de alteração de conteúdo dos que possuem baixas taxas para reduzir o tráfego de clientes para a CDN e gerar mais TTL. Isso minimiza a revalidação do CDN no JSON com o servidor de origem.

  • Para invalidar ativamente o conteúdo da CDN, use a limpeza suave. Isso permite que a CDN faça o download novamente do conteúdo sem causar a perda de um cache.

Melhore o tempo de download de conteúdo headless improve-download-time

  • Verifique se os clientes HTTP usam HTTP/2.
  • Verifique se os clientes HTTP aceitam a solicitação de cabeçalhos para gzip.
  • Minimize o número de domínios usados para hospedar JSON e artefatos referenciados.
  • Aproveite o Last-modified-since para atualizar recursos.
  • Use a saída _reference no arquivo JSON para iniciar o download de ativos sem precisar analisar os arquivos JSON completos.

Implantar para produção deploy-to-production

Depois de verificar se tudo foi testado e está funcionando corretamente, você está pronto para enviar as atualizações de código para um repositório Git centralizado no Cloud Manager.

Depois que as atualizações forem carregadas no Cloud Manager, elas poderão ser implantadas no AEM as a Cloud Service usando o pipeline de CI/CD do Cloud Manager.

Você pode começar a implantar seu código usando o pipeline CI/CD do Cloud Manager, que é amplamente coberto aqui.

Monitoramento de desempenho performance-monitoring

Para que os usuários tenham a melhor experiência possível ao usar o aplicativo headless do AEM, é importante monitorar as principais métricas de desempenho, conforme detalhado abaixo:

  • Validar versões de visualização e produção do aplicativo

  • Verificar as páginas de status do AEM para obter o status atual de disponibilidade do serviço

  • Acessar relatórios de desempenho

    • Desempenho da entrega

      • Desempenho de CDN (Rapidamente): verifique o número de chamadas, a taxa de cache, as taxas de erro e o tráfego de conteúdo
      • Servidores de origem: número de chamadas, taxas de erro, cargas da CPU, tráfego de conteúdo
    • Desempenho do autor

      • Verificar o número de usuários, solicitações e carga
  • Acessar relatórios de desempenho específicos do aplicativo e do espaço

    • Quando o servidor estiver ativo, verifique se as métricas gerais estão verdes/laranjas/vermelhas, então identifique problemas específicos do aplicativo
    • Abra os mesmos relatórios acima filtrados para o aplicativo ou espaço (por exemplo, desktop Photoshop, paywall)
    • Use APIs de log do Splunk para acessar o desempenho do serviço e do aplicativo
    • Entre em contato com o Suporte ao cliente em caso de outros problemas.

Resolução de problemas troubleshooting

Depuração debugging

Siga essas práticas recomendadas como uma abordagem geral para depurar:

  • Valide a funcionalidade e o desempenho com a versão de visualização do aplicativo
  • Valide a funcionalidade e o desempenho com a versão de produção do aplicativo
  • Valide com a visualização JSON do Editor de fragmento de conteúdo
  • Inspecione o JSON no aplicativo cliente para verificar a presença de problemas nele ou na entrega
  • Inspecione o JSON usando o GraphQL para verificar a presença de problemas relacionados ao conteúdo em cache ou ao AEM

Registro de um erro com o suporte logging-a-bug-with-support

Para informar um erro ao suporte com eficiência caso precise de mais assistência, faça o seguinte:

  • Tire capturas de tela do problema, se necessário
  • Documente uma maneira de reproduzir o problema
  • Documente o conteúdo com o qual o é possível reproduz o problema
  • Registre o problema por meio do portal de suporte do AEM com a prioridade apropriada

A jornada termina - Será? journey-ends

Parabéns! Você concluiu a Jornada do desenvolvedor headless do AEM! Agora você deve ter uma compreensão básica sobre:

  • A diferença entre a entrega de conteúdo headless e headful.
  • Recursos headless do AEM.
  • Como organizar um projeto do AEM Headless.
  • Como criar conteúdo headless no AEM.
  • Como recuperar e atualizar conteúdo headless no AEM.
  • Como ativar um projeto do AEM Headless.
  • O que fazer depois da ativação.

Ou você já lançou seu primeiro projeto Headless do AEM ou agora tem todo o conhecimento necessário para tal. Excelente trabalho!

Explore os Aplicativos de página única explore-spa

No entanto, isso não é tudo que o armazenamento headless do AEM oferece. Talvez você se lembre no Introdução como parte da jornada discutimos brevemente como o AEM não só suporta a entrega headless e os modelos de pilha completa tradicionais, como também pode suportar modelos híbridos que combinam as vantagens de ambos.

Se esse tipo de flexibilidade é algo que você precisa para o seu projeto, continue para a parte adicional opcional da jornada, Como criar Aplicativos de página única (SPAs) com o AEM.

Recursos adicionais additional-resources

recommendation-more-help
fbcff2a9-b6fe-4574-b04a-21e75df764ab