GH GambleHub

სატესტო გარემო და სტაგინგი

1) მიზანი და პასუხისმგებლობის სფერო

ტესტის გარემო ამცირებს გამოშვების რისკს, აძლევს სწრაფ უკუკავშირს და პროდუქციის მახლობლად პირობებს, რეალურ მოთამაშეებზე და ფულზე გავლენის გარეშე. IGaming- ისთვის ეს კრიტიკულია გადახდების (PSP), KYC/AML, საპასუხისმგებლო თამაშის (RG) და სეზონური მწვერვალების გამო.

2) გარემოს ტაქსონომია

Dev (ადგილობრივი/ქვიშის ყუთები): დეველოპერების სწრაფი გამეორება, მინიმალური დამოკიდებულება, ფიჩეფლაგები.
CI/Test (ინტეგრაცია): ასამბლეა, ერთეული/ინტეგრაცია, საკონტრაქტო ტესტები, მუხლებზე e2e.
სტაგინგი: მაქსიმალური პარიტეტი გაყიდვით (ვერსიები, კონფისკაციები, ტოპოლოგია), „გამოშვების რეპეტიცია“.
Perf/Load: იზოლირებული გარემო დატვირთვის/სტრესის ტესტებისთვის, ისე, რომ არ ჩაერიოს ფუნქციურ შემოწმებებში.
Sec/Compliance Sandboxes: უსაფრთხოების შემოწმებები, RG/PII პოლიტიკა, SoD.
DR/Failover Lab: უბედური შემთხვევების სცენარები და რეგიონთაშორისი ფეილოვერი.

თითოეულ გარემოს აქვს საკუთარი სახელების სივრცეები: 'tenant/region/environment'.

3) პარიტეტი გაყიდვით (staging-first)

კონფიგურაცია: GitOps, იგივე სქემები და დამადასტურებლები; განსხვავებები - მხოლოდ მნიშვნელობებში (კლავიშები/ლიმიტები/ენდოპოინები).
ტოპოლოგია: მომსახურების იგივე ვერსიები, ქსელის პოლიტიკა, დაბალანსება, ქეში/BD ტიპები.
მონაცემები: სინთეზური ან ფოკუსირებული; არა „ნედლეული“ PII.
ტელემეტრია: იგივე დაშბორდები/ალერტები (მხოლოდ რეიდების დონე და მსუბუქი ლიმიტები განსხვავებულია).

4) მონაცემები: სტრატეგია და ჰიგიენა

სინთეზური გენერატორები: რეალისტური განაწილება ანაბრების/განაკვეთების/CCC, ფსევდო-BINs, ყალბი დოკუმენტები.
ასლების შეფუთვა: იდენტიფიკატორის ცალმხრივი ჰაშირება, მგრძნობიარე ველების შიფრირება.
სავარძელი: „სკრიპტების ნაკრები“ (რეგისტრაცია - ანაბარი - განაკვეთი - განაკვეთი - დასკვნა) დეტერმინისტული ID- ით.
TTL პოლიტიკოსები და გაწმენდები: ძველი მონაცემების მანქანის მეურვეობა, მოცულობის შეზღუდვები.
ფრჩხილის ტრაფიკი: კითხვა ჩანაწერების/გვერდითი მოვლენების გარეშე.

5) ვირტუალიზაციის სერვისი და გარე პროვაიდერები

PSP/KYC/CDN/WAF მოდულირდება საკონტრაქტო ბუჩქებით და ცვალებადი პასუხებით (წარმატება, რბილი/hard decline, დრო).
ხელშეკრულების ტესტები (consumer-driven): ინტერფეისებისა და მაგალითების დაფიქსირება.
test doubles დროშა გადადის: 'real' sandbox 'virtualized'.

6) იზოლაცია და მრავალმხრივი

Namespace per tenant/region k8s/კონფისკაციის საცავებში.
CPU/IO/Net კვოტები და ლიმიტები ისე, რომ ერთი ტესტი არ დაიშალოს მთელ ოთხშაბათს.
ეფემერული სტენდები PR/feature ფილიალზე: იზრდება წუთში, ცხოვრობს საათობით/დღეებში, შემდეგ განკარგავს.

7) კონვეიერი CI/CD და კარიბჭეები

Поток: `build → unit → contract → integration → e2e (virtualized) → security scan → staging → canary → prod`.

კარიბჭეები staging- ზე გადასვლისთვის:
  • მწვანე unit/contract, სქემების და ჩამორთმევის ლინზები;
  • ცვლილებების რისკის კლასი (პოლიცია-as-code), freeze ფანჯრები;
  • SLO კარიბჭეები (არა წითელი SLI).
კარიბჭეები გადასვლაზე:
  • წარმატებული „გამოშვების რეპეტიცია“ (მიგრაცია, კონფისკაცია, ფიჩეფლაგები, ალერტები);
  • ფოსტის მონიტორინგის სია;
  • 4-eyes ხელმოწერები high-risk- ზე (PSP როუტინგი, RG ლიმიტები, PII ექსპორტი).

8) გათავისუფლების რეპეტიციები

BD/სქემების მიგრაცია: dry-run + შექცევადობა (down მიგრაცია), დროის შეფასება.
კონფისკაციის გამოშვება: კანარის ნაბიჯები, SLI auto-rollback.
ფიჩეფლაგები: აუდიტორიის 5-25% -იანი ჩართვა, guardrails- ის შემოწმება.
სტატუსის გვერდი/კომიქსების შაბლონები: შეტყობინებების დამუშავება (მონახაზები გამოქვეყნების გარეშე).
ინციდენტი ბოტი: ბოტის გუნდები დაიწყონ runbook მოქმედებები, როგორც სასწავლო განგაში.

9) უნებართვო შემოწმებები

დატვირთვა/სტრესი/endurans: რეალური მწვერვალების პროფილები (მატჩები, ტურნირები), p95/p99 მიზნები, დაცვა რიგების გადახურებისგან.
უკმარისობა (ქაოსი): ქსელის უკმარისობა, შენიშვნების ვარდნა, პროვაიდერების დრო, ნაწილობრივი ფალოვერი.
უსაფრთხოება: DAST/SAST/IAST, საიდუმლო სკანირება, SoD შემოწმება, ავტორიზაციის/აუდიტის რეგრესები.
შესაბამისობა: KYC/AML/RG სკრიპტები, მარეგულირებლების მიერ ანგარიშების ექსპორტი, მონაცემთა გეო-საზღვრები.
ფინანსები: ლეღვის სისწორე წილადი/მარგინალური შემთხვევების დროს, გადახდების/სეტლების იდემპოტენტურობა.

10) გარემოს დაკვირვება

იგივე SLI/SLO ბარათები და ალერტები (დონე უფრო რბილია).
სინთეტიკა იმეორებს მომხმარებლის გზებს: ლოგინი, ანაბარი, განაკვეთი, დასკვნა.
Exemplars/Trace ხელმისაწვდომია RCA- სთვის; ლოგოები PII გარეშე.
Drift დეტექტორი: Git-runtime (ვერსიები, კონფიგურაციები, ფიჩეფლაგები).
Cost მეტრიკა: $/სთ გარემო, $/ტესტი, „მძიმე“ დაშბორდები.

11) ხელმისაწვდომი, SoD და უსაფრთხოება

RBAC/ABAC: როლები/ტენანტი/რეგიონი; prod საიდუმლოებები არ არის ხელმისაწვდომი.
JIT უფლებები ადმინისტრირების ოპერაციებზე, სავალდებულო აუდიტი.
მონაცემთა პოლიტიკა: აკრძალვა PII, შეფუთვა, გეო-რეზიდენცია.
ქსელის იზოლაცია: staging ვერ წერს გარე პრო-სისტემებში.

12) პროდუქტიულობა და ღირებულება (FinOps)

ეფემერული სტენდები - მანქანების განკარგვა; ღამისთევა გამორთულია idle კლასტერით.
ძირითადი ფენების შერევა (Observability, CI ქეში), მაგრამ სატესტო დატვირთვის იზოლაცია.
„ძვირადღირებული“ ტესტების კატალოგი; პარალელიზმის ლიმიტები; პრიორიტეტიზაცია QoS კლასში.

13) ინტეგრაცია (ოპერაციული)

Incident bot: '/staging promote 'rollback', '/drill start ', რეპეტიციების დრო.
Release-gates: prod გამოშვება წითელი SLO staging.
Feature-flags: დროშის გადაჭრის ზოგადი სერვისი, თქვენი ტრაფიკის სეგმენტი.
Metrics API: იგივე endpoints და მეტრიკის კატალოგები, პასუხებში „საშუალო დარტყმა“.

14) არტეფაქტების მაგალითები

14. 1 ეფემერული გარემოს მანიფესტი PR- ზე

yaml apiVersion: env. platform/v1 kind: EphemeralEnv metadata:
pr: 4217 tenant: brandA region: EU spec:
services: [api, payments, kyc, games]
dataSeed: "scenario:deposit-bet-withdraw"
virtualProviders: [psp, kyc]
ttl: "72h"
resources:
qos: B limits: { cpu: "8", memory: "16Gi" }

14. 2 პროვაიდერების კატალოგი (ვირტუალიზაცია)

yaml apiVersion: test. platform/v1 kind: ProviderMock metadata:
id: "psp. sandbox. v2"
spec:
scenarios:
- name: success rate: 0. 85
- name: soft_decline rate: 0. 1
- name: timeout rate: 0. 05 latency:
p95: "600ms"
p99: "1. 5s"

14. 3 ჩეკის სია „გათავისუფლების რეპეტიცია“ (გამონაყარი)

BD მიგრაცია: დრო, შექცევადობა;

კონფისკაცია/ficheflagi: canare, canare, SLO კარიბჭე;

ალერტები/დაშბორდები: მიბმული, ფუფუნების გარეშე;

სტატუს მონახაზები: მზად არის;

საპირისპირო გეგმა: 'T + 5m', 'T + 20 მ' მეტრიკა.

15) RACI და პროცესები

Env Owner (SRE/Platform): პარიტეტი, წვდომა, ღირებულება, დაშბორდები.
დომენის ფანჯრები: ტესტის სკრიპტები, სავარძლები, კონტრაქტები, KPI.
QA/SEC/კომპლექსი: შემოწმებები, მოხსენებები, RG კონტროლი.
Release Manager: კარიბჭეები, კალენდარი, freeze/maintenance.
On-call/IC: მონაწილეობენ P1 სცენარების რეპეტიციებში.

16) KPI/KRI გარემო

Lead Time to Staging: staging, median.
Change Failure Rate (staging): გამოტოვების წილი პროდ.
Parity Score: ვერსიების/ჩამორთმევის/ტოპოლოგიის დამთხვევა (მიზანი 95%).
Test Coverage e2e კრიტიკულ მარშრუტებზე: ლოგინი/ანაბარი/განაკვეთი/გამომავალი.
Cost per Test / per Env Hour.
Drift Incidents: Git - runtime განსხვავებების შემთხვევები.
Security/Compliance Defects: ნაპოვნია Proda- მდე.

17) განხორციელების გზის რუკა (6-10 კვირა)

ნვე. 1-2: გარემოსდაცვითი ინვენტარიზაცია, GitOps კატალოგები, კონფიგურაციის სქემები, მონაცემთა ბაზები, პროვაიდერების საკონტრაქტო ტესტები.
ნვე. 3-4: staging პარიტეტი (ვერსიები/ტოპოლოგია), ეფემერული სტენდები PR- ზე, ვირტუალიზაცია PSP/KYC, SLO კარიბჭეები.
ნვე. 5-6: გამოშვების რეპეტიციები (ჩეკის ფურცლები, ბოტის ბრძანებები), დატვირთვის პროფილები, ქაოსის ნაკრები, გარემოსდაცვითი დაშბორდები.
ნვე. 7-8: მონაცემთა პოლიტიკა (შეფუთვა/TTL), SoD/RBAC, FinOps shuduling, ღირებულების ანგარიშები.
ნვე. 9-10: DR/Faylover-lab, შესაბამისობის სკრიპტები, WORM აუდიტი, გუნდების ტრენინგი.

18) ანტიპატერები

„Staging with“: სხვა ვერსიები/კონფიგურაცია/ქსელის წესები.
Prod PII- ის ტესტში კოპირება მარეგულირებელი რისკებია.
არ არსებობს გარე პროვაიდერების ვირტუალიზაცია, არასტაბილური/ძვირადღირებული ტესტები.
SLO კარიბჭეების არარსებობა/რეპეტიციები - სიურპრიზები გაყიდვაში.
„მარადიული“ ტესტის მონაცემები TTL- ს გარეშე არის ნაგავი და ყალბი ეფექტები.
ერთობლივი დატვირთვა და ფუნქციური შემოწმებები ერთ სტენდში.
ნულოვანი განკარგვა ღამით/შაბათ-კვირას - ბიუჯეტის დაწვა.

შედეგი

სატესტო გარემო და სტაგინგი არის ხარისხის წარმოების ინფრასტრუქტურა: გაყიდვების პარიტეტი, სუფთა მონაცემები და ვირტუალური პროვაიდერები, მკაცრი CI/CD კარიბჭეები, გამოშვების რეპეტიციები, დაკვირვება და FinOps. ეს ჩარჩო ამცირებს CFR და MTTR, ზრდის გამოშვების პროგნოზირებას და იცავს iGaming პლატფორმის შემოსავალს და შესაბამისობას.

Contact

დაგვიკავშირდით

დაგვიკავშირდით ნებისმიერი კითხვის ან მხარდაჭერისთვის.ჩვენ ყოველთვის მზად ვართ დაგეხმაროთ!

ინტეგრაციის დაწყება

Email — სავალდებულოა. Telegram ან WhatsApp — სურვილისამებრ.

თქვენი სახელი არასავალდებულო
Email არასავალდებულო
თემა არასავალდებულო
შეტყობინება არასავალდებულო
Telegram არასავალდებულო
@
თუ მიუთითებთ Telegram-ს — ვუპასუხებთ იქაც, დამატებით Email-ზე.
WhatsApp არასავალდებულო
ფორმატი: ქვეყნის კოდი და ნომერი (მაგალითად, +995XXXXXXXXX).

ღილაკზე დაჭერით თქვენ ეთანხმებით თქვენი მონაცემების დამუშავებას.