SRE (Site Reliability Engineering)
SRE (ang. Site Reliability Engineering, inżynieria niezawodności systemów) to dyscyplina łącząca inżynierię oprogramowania z administracją systemami, której celem jest budowanie i utrzymywanie niezawodnych, skalowalnych usług. Koncepcję opracował Google, formułując zasadę: traktuj operacje tak, jak problem inżynierski — mierzalny, automatyzowalny i rozwiązywalny za pomocą kodu.
Na czym polega SRE
SRE zastępuje intuicyjne „utrzymanie serwerów" podejściem opartym na danych i jasnych celach. Kluczowe pojęcia to:
- SLI (Service Level Indicator) — mierzalny wskaźnik, np. odsetek udanych żądań lub czas odpowiedzi,
- SLO (Service Level Objective) — docelowa wartość wskaźnika, np. 99,9% dostępności,
- error budget — budżet błędów, czyli dopuszczalny margines niedostępności; pozwala racjonalnie wyważyć tempo wdrożeń i stabilność,
- toil — powtarzalna, ręczna praca operacyjna, którą SRE dąży zautomatyzować.
Fundamentem pracy jest observability — zbieranie metryk, logów i śladów, dzięki którym zespół szybko wykrywa i diagnozuje problemy, zanim odczują je użytkownicy.
Zastosowanie w praktyce
Podejście SRE stosują firmy prowadzące usługi online, dla których liczy się wysoka dostępność i przewidywalna wydajność — platformy SaaS, sklepy, systemy płatnicze i infrastruktura chmurowa. Inżynierowie SRE budują automatyzację wdrożeń, systemy alertów, procedury reagowania na incydenty i mechanizmy samoczynnego przywracania usług. W praktyce ich praca ściśle łączy się z DevOps oraz z planowaniem odtwarzania po awarii, opisywanym parametrami RTO i RPO — wszystko po to, by usługa działała stabilnie mimo rosnącego ruchu i nieuniknionych awarii.
Powiązane pojęcia
Najczęstsze pytania
Czym różni się SRE od DevOps?
DevOps to szeroka filozofia współpracy między developmentem a operacjami. SRE to konkretna implementacja tej idei stworzona przez Google, która wprowadza mierzalne wskaźniki (SLI, SLO), budżet błędów i traktuje niezawodność jak inżynierię z pomiarem. Można powiedzieć, że SRE to DevOps z twardymi metrykami.
Co to jest error budget?
Error budget (budżet błędów) to dopuszczalny margines niedostępności wynikający z przyjętego celu SLO — np. przy 99,9% dostępności to około 43 minuty przestoju miesięcznie. Dopóki budżet nie jest wyczerpany, zespół może śmielej wdrażać zmiany; gdy się kończy, priorytetem staje się stabilizacja.
