Toolverse
Wszystkie skille

plain-optimize

autor: dropseed

Analizuj wydajność aplikacji — znajdź wolne zapytania i problemy N+1 w bazie danych

Instalacja

Wybierz klienta i sklonuj repozytorium do odpowiedniego katalogu skilli.

Instalacja

Szybkie info

Kategoria
Backend

O skillu

Narzędzie do diagnozowania problemów wydajności w Twojej aplikacji. Przechwytuje ślady wykonania żądań HTTP, zlicza zapytania do bazy danych i automatycznie wykrywa duplikaty oraz bottlenecki. Otrzymujesz strukturalny raport JSON z informacją o liczbie zapytań, ich czasach wykonania i lokalizacjach w kodzie. Idealne, gdy strona ładuje się wolno lub wykonywanych jest zbyt wiele zapytań do bazy.

Jak używać

  1. Uruchom obserwator wydajności na wybranej ścieżce aplikacji poleceniem uv run plain observer request /path. Jeśli chcesz testować jako zalogowany użytkownik, dodaj flagę --user z identyfikatorem lub adresem e-mail, np. uv run plain observer request /path --user 1. Dla żądań POST użyj flag --method POST --data z danymi w formacie JSON.

  2. Przeanalizuj zwrócony raport JSON, zwracając szczególną uwagę na tablicę issues — tam znajdują się automatycznie wykryte duplikaty zapytań wraz z lokalizacjami w kodzie. Sprawdź także liczniki query_count i duplicate_query_count, aby zrozumieć skalę problemu.

  3. Zidentyfikuj główne bottlenecki: szukaj zapytań powtarzających się wiele razy (N+1), zapytań o wysokim total_duration_ms, brakujących indeksów w bazie lub niepotrzebnych operacji na gorących ścieżkach kodu.

  4. Zastosuj poprawki — dla N+1 dodaj select_related() lub prefetch_related(), dla wolnych zapytań rozważ indeksy, a dla drogich obliczeń wdroż cache.

  5. Uruchom ponownie to samo polecenie obserwatora i porównaj metryki query_count, duplicate_query_count oraz trace.duration_ms, aby potwierdzić poprawę wydajności.

Podobne skille