ოპერაციები და გამოშვებისა და განახლების ციკლის მენეჯმენტი
გამოშვებებისა და განახლებების ციკლები
1) დანიშვნა
გამოშვების ციკლი ადგენს მიწოდების რიტმს: როდის და როგორ ხდება ცვლილებები მომხმარებელს, რა გარანტიები აქვს ხარისხს, სიჩქარეს და გამჭვირვალობას. კარგად შემუშავებული ციკლი:- ამცირებს გაურკვევლობას და კოორდინაციის ღირებულებას,
- ამცირებს ინციდენტებისა და გამოტოვების რისკს,
- სინქრონიზაციას უწევს ტექნიკას ბიზნეს მოვლენებთან (მარკეტინგი, სპორტი, ფინი). ანგარიში),
- ზრდის throughput ბრძანებებს CFR (Change Failure Rate) ზრდის გარეშე.
2) გამოშვების მოდელები: რომელი აირჩიოთ
1. Release Train (მატარებლები) - ფიქსირებული სლოტები (მაგალითად, w/სთ 10:00 EET).
შესაფერისია მრავალსართულიანი მონოლითებისთვის და „მძიმე“ აფეთქების ღუმელის ცვლილებებისთვის.
2. Continuous Delivery (მოთხოვნით) - ყველა მერგი, რომელმაც გაიარა ვალუტის კარიბჭეები, შეიძლება წავიდეს პროდუქტში.
შესაფერისია მიკრო სერვისებისთვის და კულტურის მომავალი-ფლაი.
3. ჰიბრიდი - სასურსათო ფრონტები მატარებლებისთვის, მოთხოვნით.
არჩევანის კრიტერიუმები: ტესტების/ობსერვატორიის სიმწიფე, გარე პარტნიორებზე დამოკიდებულება (PSP/KYC), შესაბამისობის მოთხოვნები, ორგანიზაციის ზომა.
3) გამოშვებული კალენდარი და ფანჯრები
ერთი კალენდარი: გამოშვების სლოტები, BD მიგრაცია, მარკეტინგული კამპანიები, ძირითადი სპორტული ღონისძიებები, საანგარიშო პერიოდები.
Freeze პერიოდები: მკაფიოდ განსაზღვრული ფანჯრები, როდესაც მხოლოდ hotfix P1 ნებადართულია (მაგალითად, ჩემპიონთა ლიგის ფინალი, Black Friday, საგადასახადო ანგარიშები).
რეგიონალური ტალღები: ჯერ „თბილი“ ბაზრები/დაბალი ტრაფიკი, შემდეგ - მთავარი; ღამის ფანჯრები ადგილობრივი TZ.
კვეთა პოლიტიკა: ერთდროული ცვლილებების აკრძალვა ერთ კრიტიკულ გზაზე (გადახდები, KYC, საავტორო უფლებები).
4) განშტოება და ვერსია
Trunk-based + short-lived branches (ფილიალების ფილიალები 3-5 დღე).
Release ფილიალი - მხოლოდ მატარებლებისთვის/გრძელი გადამოწმებისთვის; მკაცრი უკან-მერჯში 'main'.
SemVer: `MAJOR. MINOR. PATCH 'ბიბლიოთეკებისთვის/SDK; არტეფაქტებისა და გარემოცვების ჭდეები.
კონტრაქტები: (Avro/Protobuf) თანმიმდევრობით; მიგრაცია - ორფაზიანი.
5) ხარისხის კანვერები (კარიბჭეები)
1. Static + SAST/DAST + ლინტერი
2. Unit/Contract/Component ტესტები
3. E2E/Performance smoke (გზაზე)
4. უსაფრთხოება/კომპლექსის შემოწმებები (საიდუმლოებები, ლიცენზიები, ტერიტორიების პოლიტიკა)
5. Release Candidate - ხელმოწერა, SBOM, არტეფაქტები
6. პროფესიულ როლზე მანქანების გარდერობებით (იხ. § 7)
ყველა კარიბჭე არის კოდი და პოლიტიკა (Policy-as-Code), შედეგები - გამოშვების არტეფაქტებში.
6) გარემო და აქციები
Dev - Int - Stage - Stage, მონაცემებისთვის: Sandbox/Data-Stage.
GitOps აქციები, immutable სურათები, გაყიდვების „ხელის“ რედაქტირების აკრძალვა.
პარამეტრიზაცია: რეგიონები, ლიმიტები, პროვაიდერები - კონფიგურაციის საშუალებით (აუდიტი).
7) განლაგების სტრატეგია
Canary: 1%→5%→25%→100% (или per-region).
ცისფერი-მწვანე: პარალელური გარემო + ატომური გადართვა.
Feature Flags: ფუნქციური ჩართვა/kill-switch; A/B и shadow.
Staged Rollout Mobile/Web: კლიენტის/მიწოდების არხების ვერსიით (Store/OTA).
გარდრეილები (auto stop): p95 latence> 25%, error%> 2%, ავტორიზაციების/დეპოზიტების ვარდნა, ჩარჩბეკების ზრდა, burn-rate SLO 1-საათიანი ფანჯარისთვის> ბარიერი.
8) კოორდინაცია ბიზნესთან და პარტნიორებთან
მარკეტინგი/მოვლენები: ფუნქციონალური ფუნქციონირება ოპერაციებისთვის, ზღვარი 48:- პარტნიორები (PSP/KYC/Game providers): SDK სერტიფიკაციის/განახლების სლოტები, მიგრაციის პერიოდის ორმაგი ენდოინტი.
- მხარდაჭერა: მაკროები/FAQ UX ცვლილებებზე, სტატუსის გვერდებზე, ესკალაციის არხებზე.
9) მონაცემთა განახლებები და სქემები
Additive first: ჯერ დაამატეთ, შემდეგ შეცვალეთ კითხვა/ჩანაწერი, ბოლოს - ამოიღეთ ძველი.
ინდექსები და დიდი მიგრაცია - ღამის ფანჯრები, ბრძოლები, ჩეკპოინები და წინსვლა.
ფანჯრებისა და მეტრიკის ლექსიკონის ვერსია: განახლებები სინქრონიზებულია გამოშვებით, BI მიგრაცია ცალკე არის გაყიდვების ფანჯრებისგან.
10) კომუნიკაციები და არტეფაქტები
Release Notes (რა/რატომ/რისკები/rollback), ChonelLog სერვისებზე.
Steikholders- ის კალენდარული ინვესტიციები, რეკლამირების შაბლონები (დრო/მის შემდეგ).
War-room არხი მატარებლების/დიდი გამოშვებების ხანგრძლივობისთვის, Apdates- ის სიხშირე: P1 - ყოველ 15-20 წუთში.
11) შესრულების მეტრიკა
DORA: Deployment Frequency, Lead Time, Change Failure Rate, MTTR.
Backout Rate ცვლილებების ტიპების მიხედვით.
SLO Compliance% ადრე/გამოშვების შემდეგ.
Release Debt: „ჩამოკიდებული“ დროშები, არასრული მიგრაცია, ძველი დამოკიდებულებები.
Business Impact: კონვერტაცია, KYC TTV, PSP success, GGR/NGR drift გამოშვების ფანჯარაში.
12) ანტი შაბლონები
დიდი ბანგი: „ყველაფერი და დაუყოვნებლივ“ დროშების/კანარის გარეშე.
ტრაფიკის/მოვლენების მწვერვალზე გამოშვება უფასო გამონაკლისების გარეშე.
მანქანების გარეშე: სახელმძღვანელო მონიტორინგი „თვალზე“.
გრძელი ფილიალები: მტკივნეული შერწყმა და ფარული რეგრესიები.
სახელმძღვანელო ნაბიჯები გაყიდვაში: არ არსებობს აუდიტი და პროგნოზირება.
დროშები TTL და მფლობელების გარეშე: „მარადიული“ ფილიალები.
13) ჩეკის ფურცლები
გამოსვლამდე
- RFC/ticet, რისკი და blast-radius შეფასებულია
- გაიარა კარიბჭეები CI/CD, გაფორმებულია არტეფაქტები
- + გაჩერების კრიტერიუმების შემცირების გეგმა მზად არის
- შეთანხმება კალენდართან, უფასო და პარტნიორებთან
- დაშბორდი/ალერტები უკავშირდება ვერსიას, შეიქმნა ომის ოთახი
გამოშვების დროს
- კანარის ნაბიჯები და მანქანების გაჩერება აქტიურია
- მეტრიკები p95/error%, ბიზნეს სიგნალები (auth, KYC, PSP) მონიტორზე
- გრაფიკული კომუნიკაციები, სტატუსის გვერდი განახლებულია
გამოსვლის შემდეგ
- Release Notes და ChoneLog გამოქვეყნებულია
დროშები/დროებითი გამონაკლისები (TTL)
- Post-mortem გადახრების დროს - 5 მონა. დღეები
- განახლებულია ფლეიბუქები და დოკუმენტაცია
14) მინი შაბლონები
გამოშვების სლოტის შაბლონი (მატარებელი):- თარიღი/დრო: W, 10: 00-12: 00 EET
- საგრაფო: EU (10% - 50% - 100%), შემდეგ LATAM (10% - 100%)
- გაჩერების კრიტერიუმები: error> 2% 10 წუთი, p95> + 25% 10 წუთი, PSP success <97%
- Backout: ტრაფიკის შეცვლა წინა ვერსიაზე + დროშის დაბრუნება
- კონტაქტები: @ RelEng, @ SRE-on-call, @ Support
- რა არის ახალი/რატომ
- გავლენა მომხმარებლებზე და პარტნიორებზე
- რისკები და ცნობილი შეზღუდვები
- განლაგების გეგმა/გაჩერების კრიტერიუმები/Backout
- მეტრიკა მონიტორინგისთვის
- კონტაქტები და დამხმარე არხები
15) ინტეგრაცია მეზობელ დისციპლინებთან
ცვლილების მენეჯმენტი: სტანდარტული/ნორმალური/განვითარების კლასიფიკაცია, CAB, აუდიტი.
ინციდენტების შედეგების შემცირება: მზა ფიგურების დროშები, კვოტები, შედევრი.
კონფიგურაციის აუდიტი: ყველა სარეკლამო რგოლი Git- ის, დრიფტის დეტალების და გამოყენების ჟურნალის საშუალებით.
აღსრულების პოლიტიკოსები: ლიმიტები/ტაიმაუტები/რეტრაი - კოდის მსგავსად, იძულებით.
16) შედეგი
გამოშვების ციკლები არის კონტროლირებადი რიტმი სიჩქარესა და საიმედოობას შორის. ფიქსირებული სლოტები, სადაც საჭიროა კოორდინაცია; „თხოვნით“, სადაც ავტომატიზაციის სიმწიფეა. ყველგან არის ერთი კალენდარი, დროშები და კანარის ჩამოსხმა, ავტომატური გარდერობები და გამჭვირვალე კომუნიკაციები. ასე რომ, გამოშვებები ხდება პროგნოზირებადი, უსაფრთხო და ეკონომიური.