Profilowanie za pomocą Debug Toolbar
Mierzenie liczby zapytań i ich czasu wykonania
Profilowanie za pomocą Debug Toolbar to bezpłatna lekcja Django Academy na CoddyKit. To lekcja 4 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Django Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Django Academy zawiera 4 lekcji w sumie.
Mierz, nie zgaduj
Django Debug Toolbar pokazuje dokładną liczbę zapytań wykonywanych przez stronę, dzięki czemu optymalizuje Pan/Pani na podstawie faktów, a nie przeczuć. 🔍
Zainstaluj narzędzie
Dodaje się je za pomocą pip, tak jak każdy pakiet. Jest to narzędzie development, więc nigdy nie trafia do środowiska produkcyjnego.
pip install django-debug-toolbarZarejestruj aplikację
Dodaj je do INSTALLED_APPS, aby Django załadowało jego panele i wiedziało, że pasek narzędzi jest dostępny.
INSTALLED_APPS += ['debug_toolbar']Dodaj middleware
Jego middleware wstrzykuje panel do odpowiedzi HTML, dlatego powinien znajdować się blisko początku listy middleware.
MIDDLEWARE += [
'debug_toolbar.middleware.DebugToolbarMiddleware']Zezwól na swój adres IP
Pasek narzędzi pojawia się tylko dla adresów IP znajdujących się w INTERNAL_IPS, dzięki czemu jest widoczny dla Pana/Pani, ale ukryty przed rzeczywistymi użytkownikami.
INTERNAL_IPS = ['127.0.0.1']Panel SQL
Najważniejszym panelem jest SQL. Wyświetla on każde zapytanie wykonane przez stronę wraz z czasem jego trwania, obok wyrenderowanego wyniku.
Znajdź liczbę zapytań
Zaskakująco wysoka liczba zapytań to klasyczny znak problemu N+1. Pasek narzędzi sprawia, że tej liczby nie sposób przeoczyć.
Znajdź duplikaty
Narzędzie oznacza nawet duplikaty zapytań — niemal identyczne zapytania wielokrotnie uruchamiane przez pętlę — wskazując wprost źródło problemu.
Potwierdź poprawkę
Po dodaniu select_related lub prefetch_related odśwież stronę i obserwuj spadek liczby. To dowód, że poprawka zadziałała.
Sprawdź czasy
Wolne strony nie zawsze są kwestią liczby zapytań. Pasek narzędzi pokazuje czas każdego zapytania, dzięki czemu można znaleźć te naprawdę kosztowne.
Używaj tylko w środowisku deweloperskim
Umieść ustawienia paska narzędzi za flagą DEBUG. Może on ujawniać szczegóły wewnętrzne i spowalniać strony, dlatego środowisko produkcyjne nigdy nie powinno go wyświetlać.
Szybkie sprawdzenie
Ostatnie sprawdzenie na temat dobrych praktyk profilowania.
Podsumowanie
Debug Toolbar zlicza zapytania i mierzy ich czas, dzięki czemu można znaleźć problem N+1 i potwierdzić poprawki. Zainstaluj go, zezwól na swój adres IP i używaj wyłącznie w środowisku deweloperskim. ✅
Ucz się Python dzięki korepetycjom AI — za darmo
Pisz i uruchamiaj kod w przeglądarce, otrzymuj natychmiastową pomoc od korepetytora AI dostępnego 24/7 i kontynuuj naukę w sieci lub w aplikacji.
- Kursy
- 30
- Lekcje
- 120
Często zadawane pytania
Czy lekcja „Profilowanie za pomocą Debug Toolbar” jest bezpłatna?
Tak — pełny tekst „Profilowanie za pomocą Debug Toolbar” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Django Academy, przejdź na CoddyKit PRO. Kurs Django Academy zawiera 4 lekcji w sumie.
Co nauczysz się w „Profilowanie za pomocą Debug Toolbar”?
Mierzenie liczby zapytań i ich czasu wykonania Ćwiczysz Django Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.
Czy potrzebuję doświadczenia, aby zacząć Django Academy?
Nie wymagamy żadnego doświadczenia. Django Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 4 z 4.
Ile czasu zajmuje lekcja „Profilowanie za pomocą Debug Toolbar”?
Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.
Czy mogę pisać i uruchamiać kod w tej lekcji Django Academy?
Tak. Każda lekcja Django Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.
Wszystkie lekcje w tym kursie
- Rozpoznawanie problemu N+1
- select_related dla kluczy obcych
- prefetch_related dla M2M
- Profilowanie za pomocą Debug Toolbar