გამოშვების ავტომატური გამოტოვება
1) რატომ გჭირდებათ მანქანა
IGaming- ში გამოშვებები პირდაპირ გავლენას ახდენს შემოსავალზე და მარეგულირებელზე: გადახდის ავტორიზაცია, განაკვეთების/სეტის გაანგარიშება, KYC/AML, RG. ავტომატური გამოტოვება მინიმუმამდე აყენებს ზიანს პლატფორმის ბოლო სტაბილურ მდგომარეობაში გადატანისას, სახელმძღვანელო გადაწყვეტილების მოლოდინის გარეშე:- ამცირებს CFR და MTTR;
- იცავს SLO (auth-success, p99 „განაკვეთი“, error-rate);
- ხელს უშლის შესაბამისობის ინციდენტებს (PII/RG/AML).
2) პრინციპები
1. Revert is a feature: დაბრუნება იგეგმება გამოშვების დიზაინში.
2. Policy-as-Code: ბარიერები, ფანჯრები, გამონაკლისები - კონვეიერის მონიტორინგი.
3. Canary-first: გამოტოვეთ ნაბიჯები, გამოტოვება - სარკისებური ნაბიჯებით.
4. Data-safe: შებრუნებული/შემცირებული მიგრაცია; კონფისკაციები - ვერსიური.
5. SLO-gates: წითელი SLI/guardrails - დაუყოვნებელი მანქანა.
6. Explainability: დრო, დიფები, მიზეზები - ჟურნალში WORM.
7. No single button of doom: შეზღუდვები, რისკის დადასტურება, SoD.
3) მანქანის გამოტოვების გამომწვევები (სიგნალები)
3. 1 ტექნიკური SLI/KRI
aut _ success _ rate drop GEO/PSP/BIN (მაგალითად, − 10% TR- ში 10 წუთი).
latency p99/error-rate საკვანძო მარშრუტები (ანაბარი/გამომავალი/სეტლი).
queue lag / DLQ rate / retry storm.
db replication lag / cache miss surge.
3. 2 ბიზნეს სიგნალები
deposit _ conversion - X პროცენტული პუნქტი კანარზე კონტროლის საწინააღმდეგოდ.
settle throughput დაეცემა საბაზო ხაზთან შედარებით.
chargeback/decline spikes (soft/hard).
3. 3 კრიტიკული მოვლენები
SRM უკმარისობა აქტიურ A/B (ტრეფიკის დამახინჯება).
უსაფრთხოების მოქმედება/PII guardrail.
სქემების/ჩამორთმევის შეუთავსებლობა (მოვალეობის შემსრულებელი/ლინტერი).
4) შექცევადობის არქიტექტურული შაბლონები
Canary Ramp - Full: გამოტოვება 5% -დან 25% -დან 100% -მდე; გამოტოვება - საპირისპირო თანმიმდევრობით (100-25-5-0).
Blue-Green: ბირთვული ტრაფიკის გრაგნილი ცისფერ და მწვანე შორის, დაბრუნება - მყისიერი დაბრუნება.
Feature Flags: kill-switch ქცევითი ცვლილებებისთვის (TTL, guardrails, SoD).
Config as Data: GitOps გამოტოვება/წინა ვერსია; runtime snaphots.
- ორფაზიანი (expand-contract),
- reversible (down სკრიპტები),
- write-shadow (ახალი ველები დუბლირებულია),
- read compat (ძველი კოდი ესმის ახალ სქემას).
5) უკან დახევის პოლიტიკა
ფსევდო წესები:- `auto_rollback if auth_success_rate. drop(geo="TR") > 10% for 10m AND coverage>=5%`
- `auto_rollback if bet_settle_p99 > SLO1. 25 for 15m`
- `auto_pause_flag if api_error_rate > 1. 5% for 5m`
- `deny_promote if slo_red in {"auth_success","withdraw_tat_p95"}`
- `require_dual_control if change. affects in {"PSP_ROUTING","PII_EXPORT"}`
ყველა წესი არის ვერსირებული, ტესტირება და გასეირნება.
6) მანქანის უკანდახევის ნაკადი
1. რეგრესიის დეტექტორი მუშაობს (მეტრიკა/ალერტი/დამადასტურებელი).
2. გამონაკლისის შემოწმება (სადღესასწაულო მწვერვალები, სატესტო ფანჯრები).
7) ინტეგრაცია
ინციდენტი-ბოტი: '/release rollback <id> ', მანქანების დრო, ბმულები დაშბორდებზე და დიფებზე.
Metrics API: მზა SLO და guardrail სტატუსები; exemplars RCA- სთვის.
Feature Flags: '/flag off <id> ', ავტოპაუზა guardrail.
GitOps/Config: `/config rollback <snapshot>`; დრიფტის დეტექტორი ადასტურებს შედეგს.
Status გვერდი: სურვილისამებრ საზოგადოებრივი აპდეიტები (CL/პოლიტიკის საშუალებით).
8) დაკვირვება და ტელემეტრია გამოტოვებულია
Release Dashboard: auth-success, error-rate, p95/p99, settle throughput, PSP по GEO/BIN.
Guardrail Board: აქტიური/სამუშაო წესები, ფანჯრები, ჰისტესეზი.
საფარის ისტორია: დროულად კანარის/დროშების/რეგიონების%.
აუდიტი: ვინ/რა/როდის/რატომ; არტეფაქტების დიფები; პოლიტიკის ვერსია; შედეგი.
9) უსაფრთხოება, SoD და შესაბამისობა
4-eyes/JIT იმ ქმედებებისთვის, რომლებიც გავლენას ახდენენ გადახდებზე/PII/RG.
Geo-fences: გამოტოვება, რომელიც გავლენას ახდენს მარეგულირებელ მოთხოვნებზე, ადგილობრივად გამოიყენება.
WORM ჟურნალები: შემოწმების უცვლელი კვალი.
საზოგადოებრივი კომა პაკეტები: შეესაბამება CL/Legal; ექსპერიმენტების დეტალები არ არის გამჟღავნებული.
10) არტეფაქტების მაგალითები
10. 1 მანქანის გამოტოვების პოლიტიკა (YAML)
yaml apiVersion: policy.platform/v1 kind: AutoRollbackRule metadata:
id: "payments-auth-success-tr"
spec:
scope: { tenants: ["brandA","brandB"], regions: ["EU"], geo: ["TR"] }
signal:
metric: "auth_success_rate"
condition: "drop > 10% for 10m"
compareTo: "canary_control"
action:
strategy: "step_down" # 100%->25%->5%->0%
cooldown: "15m"
exceptions:
calendar: ["2025-11-29:black_friday"]
manualOverride: false audit:
owner: "Payments SO"
riskClass: "high"
10. 2 კონფიგურაციის დაბრუნების მანიფესტი
yaml apiVersion: cfg.platform/v1 kind: ConfigRollback metadata:
id: "psp-routing-revert-2025-11-01"
spec:
from: "payments-routing-2025-11-01"
to: "payments-routing-2025-10-29"
criteria:
- metric: "auth_success_rate"
where: "geo=TR"
condition: "drop>10% for 10m"
notify:
incidentBot: true stakeholders: ["Payments","SRE","Support"]
10. 3 Kill-switch დროშა
yaml apiVersion: flag.platform/v1 kind: KillSwitch metadata:
id: "deposit.flow.v3"
spec:
guardrails: ["api_error_rate<1.5%","latency_p99<2s","slo_green:auth_success"]
autoPauseOnBreach: true ttl: "30d"
11) მონაცემთა მიგრაციასთან მუშაობა
Expand → Migrate → Contract:- Expand: დაამატეთ ახალი სვეტები/ინდექსები კითხვის დარღვევის გარეშე.
- Migrate: ორმაგი ჩაწერა/ჩაწერა, თანმიმდევრულობის შერწყმა.
- Contract: ძველი წაშლა მხოლოდ + სათვალთვალო ფანჯრის წარმატებული გამოშვების შემდეგ.
- Down სკრიპტები: სავალდებულო; დრო და დაბლოკვის შეფასება.
- Shadow კითხვა: ძველი/ახალი ბილიკის შედეგების შედარება (გვერდითი მოვლენების გარეშე).
- კონტრაქტის გაუქმების კრიტერიუმები: ნებისმიერი guardrail „წითელი“.
12) პროცესები და RACI
Release მენეჯერი: კონვეიერის მფლობელი და პოლიტიკოსი.
Service Owner: ამტკიცებს დომენის წესებს, იღებს რისკს.
SRE: ახორციელებს დეტექტორებს, დაბრუნების მექანიკას, დაშბორდებს.
უსაფრთხოება/კომპლექსი: SoD, PII/RG კონტროლი, აუდიტი.
On-Call IC/CL: კომუნიკაციები, სტატუსის გვერდი.
CAB: მანქანების გამოტოვების შემდგომი მიმოხილვა, წესების კორექტირება.
13) KPI/KRI ფუნქციები
Auto-Rollback Rate: ავტომატურად გამოტოვებული გამოშვების წილი (ნორმა: დაბალი, მაგრამ არა ნული).
Time-to-Rollback: ბავშვთა გამოტოვება (საშუალო/p95).
SLO-Breach Avoided: შემთხვევები, როდესაც მანქანის გამოტოვებამ ხელი შეუშალა მიზნების დარღვევას.
False Positives: „ყალბი“ გამოტოვების წილი (მიზანი -).
CFR ადრე/მანქანის უკან დაბრუნების შემდეგ.
Rollbacks Cost: დამატებითი დრო, კანარი, გამოთვლითი რესურსები.
Audit Completeness: მოვლენების% სრული დროით და დიფტით.
14) განხორციელების გზის რუკა (6-10 კვირა)
ნვე. 1-2: კრიტიკული მეტრიკის და ძირითადი ბარიერების კატალოგი; სტრატეგიების არჩევანი (canary/blue-green/flags); მიგრაციის შექცევადობის ინვენტარი.
ნვე. 3-4: დეტექტორების და პოლიციის ძრავის განხორციელება; ინციდენტის ბოტთან ინტეგრაცია; GitOps-rollback კონფისკაციისთვის; დაშბორდები guardrails.
ნვე. 5-6: მფრინავი Payments დომენში (auth-success, PSP როუტინგი), tabletop ტრენინგი; ჟურნალი WORM და მოხსენებები.
ნვე. 7-8: გაფართოება Games/KYC; დროშის ავტომატური პაუზა; DR სავარჯიშოები ცისფერი-მწვანე.
ნვე. 9-10: რეიდის კალიბრაცია, ფალსიის პოზიციის დაქვეითება, ფასების FinOps შეფასება, RACI ფორმალიზაცია და ტრენინგი.
15) ანტიპატერები
„გამოტოვეთ რატომღაც“: გეგმის არარსებობა და მიგრაციის შექცევადობა.
გლობალური მყისიერი გააქტიურება/დეაქტივაცია ნაბიჯების გარეშე.
ნედლეული მეტრიკის გადახრა კონტექსტის გარეშე (არ არსებობს GEO/PSP/BIN სტრატიფიკაცია).
SRM უგულებელყოფა და ექსპერიმენტები.
ჰისტერეზის გარეშე ალერტას გამოშვება ფუფუნებაა.
კონფიგურაციის სახელმძღვანელო კორექტირება გაყიდვაში Git/Audit- ის გარეშე.
ძველი სქემის წაშლა სათვალთვალო ფანჯრის გავლამდე.
შედეგი
გამოშვების ავტომატური გამოტოვება არის პლატფორმის დამცავი ქსელი: პოლიტიკა, როგორც კოდი, სწორად შერჩეული სიგნალები და ბარიერები, შექცევადი არქიტექტურული გადაწყვეტილებები (შექცევადი/ცისფერი-მწვანე/ფლაგები/გადახედვა), ჩაშენებული კომუნიკაციები და სრული აუდიტი. ასეთი წრე მკვეთრად ამცირებს გამოშვების რისკს, იცავს SLO და შემოსავალს და ზრდის რეგულატორებისა და პარტნიორების ნდობას.