A evolução do Jamstack está a tornar-se clara e sem servidor já não é apenas para as APIs. Escalar o Jamstack para sites grandes com mudanças frequentes depende de funções sem servidor. Os desenvolvedores que usam a Regeneração Estática Incremental (ISR), a Representação Persistente Distribuída (DPR), ou algo entre eles precisam de maneiras mais fáceis de observar e depurar seu código sem servidor, especialmente na produção.
Layer0 já oferece um log de streaming da saída do console a partir do seu código sem servidor em execução na nossa nuvem. Infelizmente, a saída das instruções console.log() de um aplicativo raramente é informativa, uma vez que requer que os desenvolvedores prevejam quais chamadas de API podem ser problemáticas antes que um problema surja para que eles possam escrever um extenso código de log em torno dele. Isso raramente acontece. Então, no início deste mês, lançámos a inspeção de pedidos profundos (DRI). A inspeção de pedidos é como o inspetor da Chrome Devtools Network, mas para o seu código sem servidor. Você pode ver o método, cabeçalhos e corpo de cada solicitação recebida para o seu código sem servidor, bem como a resposta final que é gerada. Melhor ainda, você pode ver essas mesmas informações detalhadas de rede para cada solicitação de API do upstream que seu código sem servidor faz. E até adicionamos um recurso útil de “copiar como curl” que torna super fácil passar de inspecionar uma chamada de API para reproduzi-la localmente. É um sonho! Vejam no tutorial abaixo.
A inspeção de pedidos está agora disponível em geral para todos os planos no Layer0 (agora Edgio) e é compatível com qualquer framework de pilha completa que suporte sem servidor, incluindo Next.js, Nuxt.js, Angular e SvelteKit/Sapper. Ao trabalhar com os nossos clientes beta, eles já descobriram que a inspeção de pedidos é útil para vários cenários:
- Resolver problemas de produção: Resolver problemas que acontecem “apenas na produção” e não podem ser reproduzidos localmente
- Visualizar código assíncrono: Entenda o fluxo exato da API de código complexo com muitas rotinas assíncronas
- Isolar APIs lentas: Examinar precisamente quando são feitas chamadas de API e quanto tempo demoram
A inspeção profunda de pedidos é uma das formas como estamos a ajudar os programadores a tirar o máximo partido de servidores. Nós já damos aos desenvolvedores a capacidade de medir a taxa de acerto do cache de seu código sem servidor e limpar o cache por rota ou páginas individuais, independentemente de eles serem gerados pela Geração Estática Incremental ou por nossos outros métodos de armazenamento em cache. De facto, um dos nossos clientes de comércio eletrónico ligou o Layer0 ao seu sistema de gestão de encomendas e está a purgar dinamicamente mais de 20 000 produtos individuais por hora à medida que o seu inventário muda. Isso permite que eles tenham um site de comércio eletrônico de carregamento instantâneo, apesar de um grande catálogo que frequentemente muda. Olhando para o futuro, estamos ansiosos para construir a inspeção de pedidos e dar-lhe ainda mais observabilidade do seu código sem servidor, incluindo o uso de memória, a concorrência e o desempenho da API. Até vamos ajudar a isolar as APIs upstream que estão causando problemas de desempenho.
Estamos entusiasmados com a profundidade da inspeção de pedidos e com estas funcionalidades futuras que o tornarão mais produtivo com servidores na plataforma Layer0 (agora Edgio).