L’evoluzione di Jamstack sta diventando chiara e senza server non è più solo per le API. La scalabilità di Jamstack su siti Web di grandi dimensioni con frequenti modifiche si basa su funzioni senza server. Gli sviluppatori che utilizzano la rigenerazione statica incrementale (ISR), il Rendering persistente distribuito (DPR) o qualcosa di simile hanno bisogno di modi più semplici per osservare ed eseguire il debug del proprio codice senza server, specialmente in produzione.
Layer0 offre già un log di streaming dell’output della console dal codice senza server in esecuzione nel nostro cloud. Sfortunatamente, l’output delle istruzioni console.log() di un’applicazione è raramente informativo, poiché richiede agli sviluppatori di prevedere quali chiamate API potrebbero essere problematiche prima che si verifichi un problema, in modo da poter scrivere un codice di registrazione esteso intorno ad esso. Succede raramente. Quindi, all’inizio di questo mese, abbiamo rilasciato Deep Request Inspection (DRI). L’ispezione delle richieste è come l’ispettore di rete Chrome Devtools, ma per il codice senza server. È possibile visualizzare il metodo, le intestazioni e il corpo di ogni richiesta in entrata al codice senza server, nonché la risposta finale generata. Inoltre, è possibile visualizzare le stesse informazioni di rete dettagliate per ogni richiesta API upstream effettuata dal codice senza server . E abbiamo anche aggiunto una utile funzione “Copia come arricciatura” che rende estremamente semplice passare dall’ispezione di una chiamata API alla riproduzione locale. È un sogno! Guarda il tutorial riportato di seguito.
L’ispezione delle richieste è ora disponibile in generale per tutti i piani su Layer0 (ora Edgio) ed è compatibile con qualsiasi framework full-stack che supporta senza server, inclusi Next.js, Nuxt.js, Angular e SvelteKit/Sapper. Lavorando con i nostri clienti beta, hanno già trovato l’ispezione richiesta utile per più scenari:
- Risoluzione dei problemi di produzione: Risolvere i problemi che si verificano “solo in produzione” e non possono essere riprodotti localmente
- Visualizzazione del codice asincrono: Comprendere l’esatto flusso API del codice complesso con molte routine asincrone
- Isolamento delle API lente: Esaminare con precisione quando vengono effettuate le chiamate API e quanto tempo impiegano
L’ispezione approfondita delle richieste è uno dei modi in cui stiamo aiutando gli sviluppatori a ottenere il massimo da serverless. Offriamo già agli sviluppatori la possibilità di misurare il tasso di hit della cache del loro codice senza server ed eliminare la cache per routing o singole pagine, indipendentemente dal fatto che siano generate da generazione statica incrementale o da altri nostri metodi di caching. Infatti, uno dei nostri clienti di e-commerce ha collegato Layer0 al proprio sistema di gestione degli ordini e sta spurgando dinamicamente oltre 20.000 singoli prodotti all’ora man mano che il loro inventario cambia. Ciò consente loro di avere un sito di e-commerce a caricamento immediato nonostante un ampio catalogo che cambia di frequente. Guardando al futuro, siamo ansiosi di basarci su un’ispezione delle richieste e offrirvi ancora più osservabilità del vostro codice senza server, tra cui l’utilizzo della memoria, la concorrenza e le prestazioni API. Ti aiuteremo anche a isolare le API upstream che stanno causando i problemi di prestazioni.
Siamo entusiasti di quanto l’ispezione approfondita delle richieste e queste funzionalità imminenti ti renderanno più produttivo con Serverless sulla piattaforma Layer0 (ora Edgio).