Nesta parte do jornada do desenvolvedor sem periféricos do AEM, saiba como implantar um aplicativo sem periféricos, colocando seu código local no Git e movendo-o para o Git do Cloud Manager para o pipeline de CI/CD.
Este artigo se baseia nesses fundamentos para que você entenda como preparar seu próprio projeto sem periféricos AEM para entrar em funcionamento.
Objetivo
Este documento ajuda você a entender o pipeline de publicação sem periféricos AEM e as considerações de desempenho que você deve conhecer antes de entrar em contato com seu aplicativo.
Proteger e dimensionar o aplicativo antes do Launch
Monitorar problemas de desempenho e depuração
Para preparar o aplicativo sem periféricos de AEM para o lançamento, siga as práticas recomendadas descritas abaixo.
Proteger e dimensionar seu aplicativo sem cabeçalho antes do lançamento
Evite criar queries que produzem mais de 15 kb de JSON (gzip compactado). Arquivos JSON longos consomem muitos recursos para que o aplicativo cliente analise.
Evite mais de cinco níveis aninhados de hierarquias de fragmentos. Níveis adicionais dificultam 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 GraphQL diretas, a menos que esteja solicitando conteúdo ao vivo 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.
AEM pode calcular o impacto de uma alteração de modelo em consultas existentes.
Divida arquivos JSON/consultas GraphQL entre taxas de alteração de conteúdo baixas e altas para reduzir o tráfego de clientes para CDN e atribuir TTL maior. 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
Certifique-se de que os clientes HTTP usam HTTP/2.
Certifique-se de que os clientes HTTP aceitem a solicitação de cabeçalhos para gzip.
Minimize o número de domínios usados para hospedar JSON e artefatos referenciados.
Aproveitamento Last-modified-since para atualizar recursos.
Use _reference saída no arquivo JSON para iniciar o download de ativos sem precisar analisar os arquivos JSON completos.
Implantar na 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 em AEM as a Cloud Service usando pipeline de CI/CD do Cloud Manager.
Você pode começar a implantar seu código aproveitando o pipeline de CI/CD do Cloud Manager, que é coberto extensivamente here.
Monitoramento de desempenho
Para que os usuários tenham a melhor experiência possível ao usar o aplicativo sem periféricos AEM, é importante monitorar as principais métricas de desempenho, conforme detalhado abaixo:
Validar versões de visualização e produção do aplicativo
Verificar AEM páginas de status para o status de disponibilidade de serviço atual
Acessar relatórios de desempenho
Desempenho do delivery
Desempenho de CDN (Fastly) - verifique o número de chamadas, a taxa de cache, as taxas de erro e o tráfego de carga
Servidores de origem - número de chamadas, taxas de erro, cargas da CPU, tráfego de carga
Desempenho do autor
Verificar o número de usuários, solicitações e carregamento
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 verde/laranja/vermelho, e 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:
Validar a funcionalidade e o desempenho com a versão de visualização do aplicativo
Validar a funcionalidade e o desempenho com a versão de produção do aplicativo
Validar com a visualização JSON do Editor de fragmento de conteúdo
Inspect o JSON no aplicativo cliente para verificar a presença de problemas no aplicativo cliente ou no delivery
Inspect o JSON usando GraphQL para verificar a presença de problemas relacionados ao conteúdo ou AEM em cache
Registro de um bug com suporte
Para registrar um bug com suporte com eficiência, caso precise de assistência adicional, siga as etapas abaixo:
Tire capturas de tela do problema, se necessário
Documente uma maneira de reproduzir o problema
Documente o conteúdo com o qual o problema reproduz
Registre um problema por meio do portal de suporte AEM com a prioridade apropriada
A Jornada Termina - Ou Será?
Parabéns. Você concluiu a Jornada do desenvolvedor sem cabeçalho AEM! Agora você deve conhecer:
A diferença entre a entrega de conteúdo sem periféricos e com periféricos.
AEM recursos sem periféricos.
Como organizar e AEM um projeto autônomo.
Como criar conteúdo sem periféricos no AEM.
Como recuperar e atualizar o conteúdo sem periféricos no AEM.
Como participar de um projeto sem cabeçalho AEM.
O que fazer depois do lançamento.
Você já lançou seu primeiro projeto AEM Headless ou agora tem todo o conhecimento necessário para isso. Excelente trabalho!
Explorar aplicativos de página única
As lojas sem cabeça no AEM não precisam parar aqui. Você deve se lembrar do Parte Introdução da jornada discutimos brevemente como o AEM não só suporta o delivery sem interface e os modelos de pilha completa tradicionais, como também pode suportar modelos híbridos que combinam as vantagens de ambos.