Como executar o aplicativo headless

Última atualização em 2023-11-17

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

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

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

  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

  • 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

  • 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

  • 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

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

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 do 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

Depuração

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

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á?

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

No entanto, isso não é tudo que o armazenamento headless do AEM oferece. Você deve se lembrar que na Parte de Introdução da jornada discutimos brevemente como o AEM não só é compatível com as entregas headless e os modelos de pilha completa tradicionais, como também é compatível com 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

Nesta página