Procent uptime to czas, przez który usługa działała, podzielony przez czas całkowity i pomnożony przez 100. Miesiąc 30-dniowy ma 43 200 minut; przy 27 minutach przestoju uptime wynosi (43 200 − 27) ÷ 43 200 × 100 = 99,9375%.
Sam wzór jest prosty. Trudniej uzyskać liczbę, której da się bronić: trzeba ustalić, jaki jest czas całkowity, co liczy się jako przestój, co pominąć i jak połączyć kilka części systemu. Ten poradnik omawia każdą z tych kwestii na przykładach, a potem wyjaśnia, czym uptime różni się od dostępności i niezawodności.
Jeśli potrzebujesz szybkiej odpowiedzi, kalkulator uptime zamienia przestój na procent, a procent na dopuszczalny przestój.
Wzór na uptime
Uptime % = (Czas całkowity − Przestój) ÷ Czas całkowity × 100
Czas całkowity i przestój muszą być w tej samej jednostce. Dla miesiąca praktycznym wyborem są minuty, a sekundy, jeśli potrzebujesz większej dokładności.
OkresMinutySekundyDzień144086 400Tydzień10 080604 800Miesiąc 30-dniowy43 2002 592 000Miesiąc 31-dniowy44 6402 678 400Średni miesiąc (30,4375 dnia)43 8302 629 800Rok (365,25 dnia)525 96031 557 600
W raportach z umowy używaj rzeczywistej długości okresu, bo większość SLA mierzy się w miesiącach kalendarzowych. Kalkulator używa średniego miesiąca, żeby cele dało się uczciwie porównywać, dlatego dla tych samych 27 minut pokazuje 99,938%.
Na podstawie kontroli zamiast minut
Jeśli Twoje dane to lista kontroli, a nie czasy awarii, uptime to udział udanych kontroli:
Uptime % = Udane kontrole ÷ Wszystkie kontrole × 100
Przy kontroli co minutę miesiąc 30-dniowy ma 43 200 kontroli. Jeśli 40 z nich się nie powiodło, uptime wynosi 43 160 ÷ 43 200 × 100 = 99,907%. Działa to tylko wtedy, gdy kontrole odbywają się w stałym odstępie, a każda nieudana kontrola liczy się jako cały interwał przestoju. Przy kontrolach co pięć minut 30-sekundowa awaria liczy się albo jako pięć minut, albo wcale.
Przykłady
Kilka incydentów w jednym miesiącu
Sklep miał w 30-dniowym miesiącu trzy incydenty: 12 minut 4. dnia, 7 minut 15. dnia i 24 minuty 27. dnia. Najpierw je zsumuj: 43 minuty. Potem (43 200 − 43) ÷ 43 200 × 100 = 99,9005%. Miesiąc 30-dniowy przy 99,9% dopuszcza 43 minuty i 12 sekund, więc sklep zmieścił się w celu z 12 sekundami zapasu.
Wyłączenie planowanej konserwacji
Jeśli Twoje SLA wyłącza konserwację, odejmij czas konserwacji od czasu całkowitego, a nie tylko od przestoju:
Uptime % = (Czas całkowity − Konserwacja − Przestój) ÷ (Czas całkowity − Konserwacja) × 100
Przykład: miesiąc 30-dniowy z 2-godzinnym oknem konserwacji i 30 minutami nieplanowanego przestoju. Bez konserwacji: (43 200 − 120 − 30) ÷ (43 200 − 120) × 100 = 99,930%. Jeśli zamiast tego liczysz konserwację jako przestój: (43 200 − 150) ÷ 43 200 × 100 = 99,653%. Ten sam miesiąc, dwie bardzo różne liczby, dlatego SLA musi określać, która obowiązuje.
Tak samo działa wstrzymane monitorowanie. Jeśli nikt nie mierzył, ten czas nie jest ani uptime, ani przestojem i należy go odjąć od czasu całkowitego.
Łączenie uptime kilku komponentów
Większość usług zależy od więcej niż jednej rzeczy. Sposób łączenia ich uptime zależy od tego, czy są połączone szeregowo, czy redundantnie.
Komponenty połączone szeregowo
Gdy każdy komponent musi działać, mnożysz ich uptime. Strona, która potrzebuje serwera aplikacji z 99,9% i bazy danych z 99,9%, osiągnie w najlepszym razie 0,999 × 0,999 = 99,8%, zakładając, że awarie zdarzają się w różnym czasie. Dodaj operatora płatności z 99,9%, a proces zakupu spada do około 99,7%. Każda dodana zależność obniża sufit.
Komponenty redundantne
Gdy pracę może wykonać którykolwiek z dwóch komponentów, usługa przestaje działać dopiero wtedy, gdy zawiodą oba. Dwa serwery po 99% dają w teorii 1 − (0,01 × 0,01) = 99,99%. W praktyce często dzielą sieć, wdrożenie albo błąd konfiguracji, więc padają razem częściej, niż zakłada matematyka. Traktuj wynik jako górną granicę, a nie obietnicę.
Nie uśredniaj wyników monitorów
Jeśli strona główna miała 100%, a proces zakupu 99,0%, średnia 99,5% nie opisuje niczego, czego doświadczyli klienci. Raportuj każdy komponent osobno i z góry ustal, które z nich tworzą „usługę” w Twoim SLA.
Uptime a dostępność a niezawodność
Te trzy słowa często używa się zamiennie. Mierzą jednak różne rzeczy, a świadomość, o które chodzi, sprawia, że liczba jest bardziej użyteczna.
Uptime to udział czasu, w którym usługa była osiągalna i odpowiadała. To właśnie oblicza powyższy wzór i to ma na myśli większość SLA.
Dostępność to udział czasu, w którym z usługi dało się korzystać: była osiągalna, działała poprawnie i wystarczająco szybko. Strona, która ładuje się 40 sekund, działa, ale nie jest dostępna. Jeśli liczysz wolne lub błędne odpowiedzi jako awarie, mierzysz dostępność.
Niezawodność to to, jak długo usługa działa bez awarii, zwykle mierzone jako MTBF (średni czas między awariami). Mówi, jak często coś się psuje, a nie jak długo pozostaje zepsute.
Dostępność łączy dwie pozostałe liczby klasycznym wzorem:
Dostępność = MTBF ÷ (MTBF + MTTR)
MTTR to średni czas przywrócenia działania. Usługa, która średnio pada co 720 godzin (raz w miesiącu) i potrzebuje godziny na powrót do działania, ma dostępność 720 ÷ 721 = 99,86%. Wzór pokazuje też dwa sposoby jej poprawy: rzadsze awarie albo szybsze przywracanie. Artykuł MTTR, MTTA i MTBF w praktyce wyjaśnia, jak mierzyć i poprawiać każdy z tych wskaźników.
Dwie usługi z tym samym uptime mogą być odbierane zupełnie inaczej. Jedna 43-minutowa awaria w miesiącu i 43 jednominutowe awarie w miesiącu dają ten sam procent, ale druga sytuacja codziennie przerywa pracę użytkowników. Dlatego warto śledzić liczbę incydentów obok procentu uptime.
Częste błędy
Pomiar od środka. Logi serwera nie zapiszą żądania, które nigdy nie dotarło. Problemy z DNS, wygasłe certyfikaty i awarie sieci widać tylko w kontrolach z zewnątrz.
Liczenie każdego zakłócenia. Pojedyncza nieudana kontrola to często problem sieci, a nie Twojej usługi. Zanim policzysz awarię jako przestój, potwierdź ją drugą kontrolą, bo inaczej Twoje liczby będą niższe niż to, czego doświadczyli użytkownicy.
Zaokrąglanie w górę. 99,896% to nie 99,9%. Porównując wynik z celem, zaokrąglaj w dół albo pokazuj tyle miejsc po przecinku, by dało się je odróżnić.
Zbyt rzadkie kontrole. Interwał kontroli wyznacza rozdzielczość. Kontrolując co 5 lub 10 minut, nie stwierdzisz, czy miesiąc spełnił cel 99,95%, który dopuszcza 22 minuty.
Kontrola tylko strony głównej. Strona główna z cache może działać, podczas gdy logowanie lub proces zakupu nie działają. Monitoruj ścieżki, na których polegają użytkownicy.
Liczby bez arkusza kalkulacyjnego
Uptimecheck oblicza uptime tak, jak opisuje ten poradnik. Monitorowanie dostępności sprawdza nawet co minutę ze Sztokholmu, Londynu i Nowego Jorku i potwierdza każdą nieudaną kontrolę z drugiej lokalizacji. Uptime to udział okresu bez potwierdzonej awarii; okna konserwacji i czas wstrzymania nie są wliczane na niekorzyść.
Raporty pokazują uptime, przestoje i incydenty dla każdego monitora za bieżący miesiąc, poprzedni miesiąc lub ostatnie 7, 30 albo 90 dni, na tle celu SLA od 99% do 99,99%, z eksportem do CSV. Zobacz jak generować raporty względem celu SLA.
Raporty dla klientów wysyłają te same liczby osobom, dla których pracujesz. Zobacz raporty dla klientów.
Strony statusu pokazują klientom 90 dni historii uptime dla każdego komponentu. Zobacz strony statusu.
Żeby sprawdzić, na co pozwala dany cel, zanim się do niego zobowiążesz, przeczytaj, co oznacza uptime 99,9%, albo skorzystaj z kalkulatora SLA i uptime.
Przestań liczyć uptime ręcznie. Wypróbuj Uptimecheck za darmo przez 14 dni, bez karty kredytowej.