Profilazione con Debug Toolbar
Misurare il numero e la durata delle query
Profilazione con Debug Toolbar è una lezione Django Academy gratuita su CoddyKit. Questa è la lezione 4 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Django Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Django Academy include 4 lezioni in totale.
Misuri, non vada a intuito
La Django Debug Toolbar mostra esattamente quante query esegue una pagina, così può ottimizzare basandosi sui fatti invece che sulle supposizioni. 🔍
La installi
La aggiunge con pip, proprio come qualsiasi altro pacchetto. È uno strumento di sviluppo, quindi non viene mai incluso in produzione.
pip install django-debug-toolbarRegistri l'app
La aggiunga a INSTALLED_APPS affinché Django carichi i suoi pannelli e sappia che la toolbar esiste.
INSTALLED_APPS += ['debug_toolbar']Aggiunga il middleware
Il suo middleware inserisce il pannello nelle risposte HTML, quindi deve posizionarlo vicino all'inizio dell'elenco dei middleware.
MIDDLEWARE += [
'debug_toolbar.middleware.DebugToolbarMiddleware']Consenta il Suo IP
La toolbar appare solo per gli IP presenti in INTERNAL_IPS, così rimane visibile a Lei ma nascosta ai visitatori effettivi.
INTERNAL_IPS = ['127.0.0.1']Il pannello SQL
Il pannello principale è SQL. Elenca ogni query eseguita da una pagina, con i relativi tempi, accanto all'output renderizzato.
Individui il numero di query
Un numero di query sorprendentemente alto è il segnale tipico del problema N+1. La toolbar rende impossibile non notare quel numero.
Trovi i duplicati
Segnala persino le query duplicate, cioè quelle quasi identiche che un ciclo esegue ripetutamente, indicando direttamente il problema.
Verifichi la correzione
Dopo aver aggiunto select_related o prefetch_related, ricarichi la pagina e osservi diminuire il numero. Questa è la prova che la correzione ha funzionato.
Legga i tempi
Le pagine lente non dipendono sempre dal numero di query. La toolbar mostra il tempo di ogni query, così può individuare quelle realmente costose.
La mantenga solo per lo sviluppo
Racchiuda le impostazioni della toolbar dietro il flag DEBUG. Può esporre dettagli interni e rallentare le pagine, quindi non deve mai essere presente in produzione.
Verifica rapida
Un'ultima verifica sulle abitudini di profilazione.
Riepilogo
La Debug Toolbar conta e misura i tempi delle query, così può individuare il problema N+1 e verificare le correzioni. La installi, consenta il Suo IP e la mantenga solo per lo sviluppo. ✅
Domande Frequenti
La lezione «Profilazione con Debug Toolbar» è gratuita?
Sì — il testo completo di «Profilazione con Debug Toolbar» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Django Academy, passa a CoddyKit PRO. Il corso Django Academy include 4 lezioni in totale.
Cosa imparerò in «Profilazione con Debug Toolbar»?
Misurare il numero e la durata delle query Eserciti Django Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.
Ho bisogno di esperienza per iniziare Django Academy?
Non è richiesta alcuna esperienza precedente. Django Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 4 di 4.
Quanto tempo richiede la lezione «Profilazione con Debug Toolbar»?
La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.
Posso scrivere ed eseguire codice in questa lezione Django Academy?
Sì. Ogni lezione Django Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.
Tutte le lezioni di questo corso
- Individuare il problema N+1
- select_related per le chiavi esterne
- prefetch_related per M2M
- Profilazione con Debug Toolbar