Operacje i → Cykle wydawania i aktualizacji zarządzania
Cykle uwalniania i aktualizacji
1) Cel
Cykl wydawania określa rytm dostawy: kiedy i jak zmiany dotrzeć do użytkownika, z jakimi gwarancjami jakości, szybkości i przejrzystości. Dobrze zaprojektowany cykl:- zmniejsza niepewność i koszty koordynacji,
- zmniejsza ryzyko incydentów i przewrotów,
- synchronizuje technologię z wydarzeniami biznesowymi (marketing, sport, raport Fin.),
- poprawia wydajność poleceń bez wzrostu CFR (Change Failure Rate).
2) Modele wydania: który wybrać
1. Zwolnienie pociągu - stałe szczeliny (np. Wt/Thur 10:00 EET)
Nadaje się do wielofunkcyjnych monolitów i „ciężkich” zmian domeny.
2. Dostawa ciągła (na życzenie) - każda fuzja, która przeszła bramy jakości może trafić do żywności.
Nadaje się do mikroservice i feature-flaga kultury.
3. Hybryda - fronty produktów w pociągach, usługi backend „na żądanie”.
Kryteria wyboru: dojrzałość testów/obserwowalność, zależność od partnerów zewnętrznych (PSP/KYC), wymagania dotyczące zgodności, wielkość organizacji.
3) Zwolnij kalendarz i okna
Pojedynczy kalendarz (w całej firmie): sloty uwolnień, migracje baz danych, kampanie marketingowe, główne imprezy sportowe, okresy sprawozdawcze.
Okresy zamrożenia: jasno określone okna, w których dozwolone jest tylko hotfix P1 (np. Finał Ligi Mistrzów, Czarny Piątek, sprawozdawczość podatkowa).
Fale regionalne: najpierw „ciepłe” rynki/niski ruch, a następnie - podstawowe; nocne okna lokalnych TZ.
Polityka przekraczania: zakaz jednoczesnych zmian na jednej ścieżce krytycznej (płatności, KYC, autoryzacja).
4) Rozgałęzienie i wersioning
Bagażnik + gałęzie krótkotrwałe (gałęzie funkcyjne ≤ 3-5 dni).
Oddział zwalniający - tylko dla pociągów/długich weryfikacji; twarda fuzja pleców w „głównej”.
SemVer: "MAJOR. DROBNE. PATCH 'dla bibliotek/SDK; tagi artefaktów i środowisk.
Umowy: programy (Avro/Protobuf) o kompatybilności z tyłu/przodu; migracje - dwustopniowe.
5) Kanały jakości (bramy)
1. Linters Static + SAST/DAST +
2. Jednostka/Kontrakt/Testy komponentów
3. E2E/Performance dymu (na scenie)
4. Kontrole bezpieczeństwa/zgodności
5. Zwolnienie kandydata → podpis, SBOM, artefakty
6. Progresywny wałek z automatycznymi szyjami ogrodniczymi (patrz § 7)
Wszystkie bramy - kod i polityka (Policy-as-Code), wyniki - w artefakcie wydania.
6) Środowiska i promocje
Dev → Int → Stage → Prod, dla danych: Piaskownica/Data-Stage.
Promocje GitOps, niezmienne obrazy, zakaz „ręcznych” edycji w prod.
Parametryzacja: regiony, limity, dostawcy - poprzez konfiguracje (skontrolowane).
7) Strategie kroczące
Kanaryjski: 1% → 5% → 25% → 100% (ила na region).
Niebiesko-zielony: równoległe środowiska + przełączanie atomowe.
Flagi funkcji: przełączniki funkcjonalne/kill-switch; A/B - cień.
Ustawione Rollout Mobile/Web: według wersji klienta/kanału dostawy (Store/OTA).
Szyny ogrodnicze (automatyczne zatrzymanie): opóźnienie p95,> 25%, błąd%> 2%, spadek autoryzacji/depozytów, wzrost obciążeń zwrotnych, szybkość spalania SLO przez 1-godzinne okno> próg.
8) Koordynacja z przedsiębiorstwami i partnerami
Marketing/Wydarzenia: zwolnienia funkcjonalności kampanii z marginesem ≥ 48 godzin.
Partnerzy (PSP/KYC/Game Providers): sloty dla certyfikatów/aktualizacji SDK, podwójne punkty końcowe dla okresu migracji.
Wsparcie: makro/FAQ dla zmian UX, strony stanu, kanały eskalacji.
9) Aktualizacje danych i schematów
Najpierw dodaj dodatek: najpierw dodaj, a następnie przełącz odczyt/zapisz, na końcu - usuń stary.
Indeksy i duże migracje - okna nocne, partiami, z punktami kontrolnymi i postępem.
Okno i słownik metryczny wersioning: aktualizacje synchronicznie z wydaniem, migracje BI - oddzielnie od okien produkcyjnych.
10) Komunikacja i artefakty
Notatki o zwolnieniu (co/dlaczego/risk/rollback), wg serwisu.
Kalendarz zaprasza zainteresowane strony, szablony ogłoszeń (przed/podczas/po).
Kanał pokój wojenny na czas trwania pociągów/głównych wydań, częstotliwość aktualizacji: P1 - co 15-20 minut.
11) Wskaźniki wydajności
DORA: częstotliwość wdrażania, czas realizacji, wskaźnik awarii zmiany, MTTR.
Szybkość kopii zapasowej według typu zmiany.
Zgodność SLO% przed/po zwolnieniach.
Dług uwolnienia: „wiszące” flagi, niekompletne migracje, stare zależności.
Wpływ biznesu: Konwersja, KYC TTV, sukces PSP, GGR/NGR dryf do wydania okna.
12) Anty-wzory
Big-bang: „wszystko na raz” bez flag/kanarów.
Zwolnienie w szczytowym ruchu/zdarzeń bez zamrażania wyjątków.
Brak automatycznych szyn: ręczne monitorowanie „przez oko”.
Długotrwałe gałęzie: bolesne fuzje i ukryte regresje.
Ręczne kroki w sprzedaży: brak audytu i przewidywalności.
Flagi bez TTL i właścicieli: „wieczne” gałęzie.
13) Listy kontrolne
Przed zwolnieniem
- Oceniany RFC/bilet, ryzyko i promień wybuchu
- Uchwalone bramy CI/CD, podpisane artefakty
- Plan kroczący + kryteria stop + wycofanie gotowe
- Koordynacja z kalendarzem, zamrożeniem i partnerami
- Deski rozdzielcze/wpisy związane z wersją, utworzony pokój wojenny
W momencie zwolnienia
- Etapy kanaryjskie i auto-stop są aktywne
- p95/błąd% metryki, sygnały biznesowe (auth, KYC, PSP) na monitorze
- Zaplanowane komunikaty, odświeżona strona stanu
Po zwolnieniu
- Publikacja Not Release I
- Usunięte flagi/tymczasowe wyjątki (TTL)
- Pośmiertnie w przypadku odchyleń ≤ 5 dni roboczych
- Zaktualizowane playbooks i dokumentacja
14) Mini szablony
Szablon czasu na start lub lądowanie (pociąg):- Data/Godzina: Wt, 10 godz. 12.00 EET
- Okręg wyborczy: UE (10% → 50% → 100%) następnie LATAM (10% → 100%)
- Kryteria stop: błąd%> 2% 10 min, p95> + 25% 10 min, sukces PSP <97%
- Kopia zapasowa: przełączyć ruch do poprzedniej wersji + flaga rollback
- Kontakt: @ RelEng, @ SRE-on-call, @ Support
- Co nowego/Dlaczego
- Wpływ na użytkowników i partnerów
- Ryzyko i znane ograniczenia
- Plan kroczący/Kryteria zatrzymania/Wycofanie
- Mierniki do monitorowania
- Kontakty i kanały wsparcia
15) Integracja z sąsiednimi dyscyplinami
Zarządzanie zmianą: klasyfikacja standardowa/normalna/awaryjna, CAB, audyt.
Zmniejszenie skutków incydentów: gotowe flagi funkcyjne, kwoty, przelanie.
Audyt konfiguracji: wszystkie promocje poprzez Git, wykrywanie dryfów i dziennik aplikacji.
Zasady realizacji: limity/timeouts/retrays - jak kod, z przymusem.
16) Sedno sprawy
Cykle uwalniania to kontrolowany rytm między prędkością a niezawodnością. Stałe przydziały czasu na start lub lądowanie, w których potrzebna jest koordynacja; „na żądanie”, gdzie dojrzałość automatyki. Wszędzie - jeden kalendarz, flagi i rolki kanarkowe, automatyczne szyny ogrodnicze i przezroczysta komunikacja. Tak więc wydania stają się przewidywalne, bezpieczne i ekonomiczne.