Ocena spadku wydajności
Jak oszacować spadek wydajności: praca ta polega głównie na diagnozie, a nie na samym usunięciu usterki. Jak oszacować skalę problemu, gdy przyczyna jest nieznana, a zagrożony jest wskaźnik SLO.
W zeszłym tygodniu liczba głosów na stronie 95 podwoiła się, a uczestnicy dyskusji głosują w niewłaściwej sprawie.
W większości przypadków problemy związane ze spadkiem wydajności wymagają intensywnej diagnostyki, a ich usunięcie jest stosunkowo proste. Zespół, który już zidentyfikował zapytanie typu „N+1”, wie, że rozwiązanie jest proste. Zespół, który tego jeszcze nie zrobił, głosuje nad zadaniem, którego rzeczywista treść brzmi: „poświęcić trzy dni na analizę wykresów płomieniowych”. Są to dwa różne zadania.
O oszacowaniu decydują dwa pytania. Po pierwsze: czy znana jest przyczyna? Jeśli tak, należy oszacować nakład pracy związany z usunięciem usterki. Jeśli nie, należy oszacować nakład pracy związany z przeprowadzeniem analizy. Po drugie: jakie SLO zostało naruszone przez regresję i jaki jest termin przywrócenia jego zgodności? Regresja, która narusza SLO dotyczące obsługi klienta, ma inny profil pilności niż 10-procentowe spowolnienie, którego nikt nie zauważył.
O czym się mówi w tym pomieszczeniu
SRE: „W ostatnią środę wartość p95 wzrosła z 200 ms do 450 ms”.
Backend: „Czy w wdrożeniach z tego dnia było coś, co rzucało się w oczy?”
Wprowadzenie: „Trzy wdrożenia. Żadne z nich nie dotknęło wolnego punktu końcowego”.
Backend: „A może po prostu nie wyglądało na to, żeby korzystali z tego wolnego punktu końcowego”.
SRE: „Czy mieścimy się w ramach SLO? Czy mamy czas na przeprowadzenie rzetelnego dochodzenia?”
Pytania, które warto zadać przed oddaniem głosu
- Czy znana jest przyczyna, czy też planujemy przeprowadzenie dochodzenia?
- Czym jest SLO i czy obecnie jest ono naruszane?
- Co się zmieniło między ostatnim okresem sprzyjającym a pierwszym okresem niekorzystnym?
- Czy dysponujemy wykresami typu „flame graph”, przebiegami czy jedynie pulpitami nawigacyjnymi?
- Czy przywrócenie poprzedniej wersji stanowi realne rozwiązanie tymczasowe na czas prowadzenia dochodzenia?
Jeśli przyczyna pozostaje jedynie przypuszczeniem, jest to test o ograniczonym czasie trwania, a nie naprawa — a w przypadku naruszenia SLO cofnięcie zmian pozwala zyskać czas na przeprowadzenie testu bez presji czasu.
Proszę określić rozmiar tego, co faktycznie Państwo posiadają, a nie tego, co chcieliby Państwo posiadać. Nieokreślona przyczyna oznacza, że zawężają Państwo zakres wyszukiwania.
Podobnie jak w przypadku szacowania błędu, którego nie da się odtworzyć, największy nakład pracy wiąże się z postawieniem diagnozy. Proszę zapoznać się z innymi przykładami szacowania lub rozpocząć bezpłatną sesję „planning poker”, gdy przyczyna zostanie zidentyfikowana.