Čo je uptime a prečo na ňom záleží
· 5 min čítania
Uptime je percento času, keď je web dostupný. 99 % znamená vyše troch dní výpadku ročne; realistický cieľ je 99,9 % a vedieť o probléme do minúty.
Definícia: čo presne meriame
Uptime je pomer času, kedy služba odpovedá očakávane (typicky HTTP 200, obsah obsahuje kľúčové slovo), k celkovému času merania. Vyjadruje sa v percentách, najčastejšie za obdobie 30 alebo 365 dní.
Opakom je downtime - čas, kedy služba nereaguje, vracia 5xx alebo trvá nad nastavený timeout. Patrí sem aj plánovaná údržba, pokiaľ ju explicitne nevylúčite z výpočtu (čo by ste mali komunikovať v SLA).
Tabuľka "nines": koľko času znamená každé desatinné miesto
| Uptime | Povolený downtime / rok | Mesiac | Deň |
|---|---|---|---|
| 99 % | 3 dni 15 h | 7 h 18 min | 14 min |
| 99,5 % | 1 deň 19 h | 3 h 39 min | 7 min |
| 99,9 % (tri deviatky (three nines)) | 8 h 45 min | 43 min | 1 min 26 s |
| 99,95 % | 4 h 22 min | 21 min | 43 s |
| 99,99 % (štyri deviatky (four nines)) | 52 min | 4 min 22 s | 8,6 s |
| 99,999 % (päť deviatok (five nines)) | 5 min 15 s | 26 s | 0,86 s |
Každá ďalšia deviatka násobí náklady na infraštruktúru. Five nines (99,999 %) je doménou globálnych providerov s aktívnou redundanciou naprieč kontinentmi - pre väčšinu biznis aplikácií je správnym cieľom 99,9 %.
Aký uptime reálne potrebujete
- Marketingový web (firma, portfólio): 99 % stačí. Návštevník, ktorý príde počas výpadku, to skúsi neskôr.
- SaaS aplikácia s desktopovým klientom: 99,9 % je minimum. Zákazníci platia za prácu, ktorú počas downtime nemôžu robiť.
- E-shop, platobná brána, real-time služba: 99,95 % a vyššie. Každá minúta = priame straty.
- Infraštruktúra (API, ktoré používajú iní): Aspoň 99,99 %. Vaše SLA limituje SLA vašich klientov.
Ako sa uptime meria
Monitorovacia služba periodicky volá váš endpoint (typicky HTTP GET, ale aj TCP socket, ICMP ping či DNS resolution). Každá kontrola má binárny výsledok: up alebo down.
Bežný interval je 1-5 minút. Čím kratší, tým rýchlejšie zachytíte výpadok, ale tým viac falošných upozornení (false-positive alertov) dostanete - lokálne sieťové výkyvy, krátky reštart pri nasadzovaní. Riešením je multi-region kontrola: výpadok sa potvrdí až vtedy, keď ho hlási N regiónov, nie iba jeden.
Najčastejšie zdroje stratených deviatok (nines)
- Expirovaný SSL/TLS certifikát. Prehliadač zablokuje stránku. Bez monitoringu sa o tom dozviete v pondelok ráno, keď zazvoní telefón.
- Vypršanie domény. Prestane fungovať celé DNS. Email, web aj status page padajú zároveň.
- Padnutý databázový proces (worker). Web vracia 500 alebo timeout pre časť requestov. Klasický ICMP ping problém nezachytí - server odpovedá, ale aplikácia je rozbitá.
- DDoS alebo flooding. Server je zaťažený, doba odozvy stúpa nad limit a monitoring oznámi výpadok.
- Pokazený deploy (nasadenie). Nová verzia má chybu (bug), ktorá zlomí niektorú cestu. Bez integračných testov to zistíte až vtedy, keď sa začnú sťažovať zákazníci.
Záver
Uptime nie je marketingové číslo - je to mierka toho, ako veľmi sa môžete spoľahnúť na vlastnú infraštruktúru. 99,9 % uptime nie je luxus, ale štandardná požiadavka pre akúkoľvek službu, ktorá generuje obrat alebo má platiacich zákazníkov.
Krok jeden je merať. Ak nemáte externé monitorovanie, technicky neviete, aký uptime máte - len ho odhadujete.
Ako si uptime vypočítate sami
Vzorec je jednoduchý:
uptime % = (celkový čas - downtime) / celkový čas × 100
Povedzme, že kontrola beží každú minútu počas 30-dňového mesiaca. To je 43 200 kontrol. Ak sa 40 z nich vrátilo ako down, downtime je približne 40 minút, takže uptime je (43200 - 40) / 43200 × 100 = 99,907 %. Na desatinných miestach záleží: rozdiel medzi 99,9 % a 99,99 % za rok je 8 hodín 45 minút oproti 52 minútam povoleného downtime. To je rozdiel medzi "popoludnie mimo prevádzky" a "takmer si to nikto nevšimol".
Ak nechcete počítať ručne, náš kalkulátor uptime prepočíta cieľové percento na povolený downtime za deň, mesiac a rok (a naopak).
Rolling okno vs kalendárne okno
To isté číslo sa dá vykázať dvoma spôsobmi a každý odpovedá na inú otázku: - Kalendárne okno (tento mesiac, tento rok): resetuje sa 1. dňa. Vhodné pre SLA reporting a fakturáciu, lebo obdobie SLA kreditu zvyčajne kopíruje fakturačný cyklus. - Rolling okno (posledných 24 h, 7 dní, 30 dní): vždy sa pozerá pevný úsek dozadu od "teraz". Vhodné na odhalenie nedávneho prepadu, lebo zlú hodinu nezriedia tri týždne zeleného stavu na konci mesiaca. Jeden výpadok vyzerá v každom z nich úplne inak. Výpadok 2. dňa v mesiaci do 30. dňa kalendárnym číslom takmer nepohne, no v rolling 24-hodinovom pohľade dominuje celý deň. Zrelý monitoring ukazuje oba.
Čo sa počíta ako downtime (a čo vylúčite)
Práve tu sa čísla uptime medzi poskytovateľmi potichu rozchádzajú:
| Udalosť | Počíta sa zvyčajne ako downtime? |
|---|---|
| HTTP 500 / 502 / 504 | Áno |
| Timeout nad nastavený limit | Áno |
| Jedna zlyhaná kontrola, ďalší interval OK | Závisí od pravidiel konsenzu |
| Plánovaná údržba (maintenance window) | Len ak nie je vylúčená |
| Zlyhanie videné jedným regiónom, nie ostatnými | Nie (pri konsenze) |
| Zlyhanie DNS resolution | Áno |
Ak inzerujete SLA, definujte tieto pravidlá písomne. Zákazník, ktorý si prečíta "99,9 %" a potom zažije dvojhodinové údržbové okno, bude číslo rozporovať, pokiaľ zmluva nehovorí, že údržba je vylúčená.
MTBF a MTTR: čísla za percentom
Percento uptime je výsledok. Dve prevádzkové metriky vysvetľujú prečo končíte tam, kde končíte: - MTBF (Mean Time Between Failures) - priemerný zdravý úsek medzi výpadkami. Vyššie je lepšie. Ženie ho kvalita kódu, redundancia infraštruktúry a rezerva kapacity. - MTTR (Mean Time To Recovery) - ako dlho výpadok v priemere trvá. Nižšie je lepšie. Ženie ho takmer výlučne to, ako rýchlo sa to dozviete. Toto je páka, ktorou hýbe monitoring: výpadok, o ktorom sa dozviete za minútu a opravíte ho za desať, vás stojí 11 minút; ten istý výpadok zistený telefonátom zákazníka o hodinu neskôr vás stojí 70. Skrátiť MTTR býva lacnejšie než predĺžiť MTBF a monitoring je to najlacnejšie skrátenie MTTR, aké existuje.
Konkrétny príklad: otáčanie gombíkom
Tím bežiaci na 99,5 % (asi 3 h 39 min downtime mesačne) chce dosiahnuť 99,9 %. Nepotrebuje nové servery. Audit ukáže, že väčšinu downtime tvoril jeden týždenný deploy, ktorý na 40 minút zlomil jednu cestu, kým si to niekto všimol, plus tesný únik pri SSL. Pridanie kontroly kľúčového slova na kritickú cestu a alertov pred expiráciou SSL skrátilo čas zistenia zo 40 minút na menej než 2. Percento sa posunulo z 99,5 % na 99,92 % bez zásahu do infraštruktúry - čisto skrátením MTTR.
Začnite merať uptime svojich služieb
ePulz.io sleduje vaše endpointy v intervaloch od 1 minúty (Business), 2 minút (Profi) alebo 5 minút (Trial a Štandard) z 3 worker nodov v 2 EÚ mestách (Liptov primary + eu2, Bratislava eu1). 7 dní zadarmo.
Súvisiace
Vyskúšajte ePulz.io zadarmo - na 7 dní bez potreby kreditnej karty.
Vytvoriť účet