ტრაფიკის გადანაწილება
1) რა არის გადანაწილება და რატომ არის საჭირო
ტრაფიკის გადანაწილება არის მარშრუტების/პროვაიდერების/რიგების კონტროლირებადი ცვლილება დატვირთვის ნაწილების (ნაკადები, მიზეზობრივი გასაღებები, QoS კლასები) გადატვირთვის, ინციდენტების, ფასების შოკების ან შესაბამისობის სტატუსის შეცვლისთვის. მიზნები:- შეინარჩუნეთ SLO (p95/p99, success rate) ადიდების დროს;
- შეამცირეთ Tail Amplification და საბოლოო დრო;
- Cost-to-Serve- ის შემცირება ხარისხისა და წესრიგის დაკარგვის გარეშე;
- უზრუნველყოს ყალბი ქცევა რისკებისა და დარღვევების დროს.
2) QoS ობიექტები, როლები და კლასები
გადანაწილების ობიექტები: მარშრუტები, ბრიჯები, მიმდევრობები, DA აუზები, POP/edge, GPU/CPU მტევანი, მომსახურების ხაზები.
Роли: Operator/Router, Provider (узел/бридж/DA/GPU), Compliance Gate, Orchestrator, Auditor/Regulator, Treasury/治理.
- Q4 არის ვადაგადაცილებული გუნდები (კრიტიკულად შეკვეთა/დასრულება).
- Q3 არის შეკვეთილი ნაკადები (მიზეზის გასაღები).
- Q2 - exactly-once ეფექტურად (snapshots/billing).
- Q1/Q0 - ტელემეტრია/ანალიტიკა/ბესტის ეფექტი.
3) როდესაც დაიწყეთ გადანაწილება (დეტაჟი)
გამომწვევი (ნებისმიერი პირობა):- დერეფნის ზემოთ p95/p99, TailAmplification = p99/p50 იზრდება.
- Queue depth ან consumer lag აღემატება ბარიერებს.
- Finality lag/bridge errors იზრდება, reorg/orphan ნორმალურია.
- მარშრუტზე Cost/Req მიდის ბიუჯეტში.
- კომპლექსის ღონისძიება: გეო/ასაკი/სანქციები, ბლოკი/შეზღუდვა.
- Degradation signals: SLA-брейки, flap-rate, error-budget burn.
4) ახალი მარშრუტის შესახებ გადაწყვეტილება
მარშრუტი/პროვაიდერი შეირჩევა მინიმალური მოსალოდნელი „ღირებულების“ მიხედვით, ინვარიანტების შესაბამისად:
Utility(route) =
wL·Latency_p95_EWMA
+ wJ·Jitter
+ wQ·QueueDepth
+ wC·Cost_per_unit (gas + DA + egress + compute)
+ wF·FinalityTime
+ wR·RiskScore
+ wA·AvailabilityPenalty
+ wG·Geo/CompliancePenalty
წონის პროფილები დამოკიდებულია QoS კლასზე: Q4-wL- ისთვის, wF - სთვის, wR- სთვის; Q1-wC, wF.
მკაცრი ინვარიანტები: 'Order (Real) - Idempotency (Russian) - Qutas (true) და Compliance (true)'.
5) ალგორითმები და გადანაწილების მექანიკა
Consistent hashing per key permutations;
Hot-Shard Relief არის „ცხელი“ კლავიშების დროებითი სეგმენტაცია.
Percentile-aware routing - გადაწყვეტილებები p95/p99 და არა p50.
EDF/LLF для Q4 (Earliest Deadline / Least Laxity First).
Wighted Fair Queuing/DRR არის სამართლიანი წილი საერთო რიგებში.
Leaky/Token buckets - კვოტები per კლასი/მარშრუტი/პროვაიდერი.
Circuit breakers — trip → reroute; გამოჯანმრთელებისთვის ჰალფ-ღია ტესტები.
Adaptive retries არის შეზღუდული რეაგირება ჯიტერითა და ვადებით.
Spillover tiers - downshift: Q0/Q1 გაემგზავრა batch/edge- ში, ათავისუფლებს Q3/Q4 ხაზს.
6) ბრძანება, იდემპოტენტობა, საბოლოო
არჩეულ მარშრუტზე მკაცრი შეკვეთა პერ კეი (Q3/Q4); failover- ით - „გაჩერების ბარიერი“ + replay outbox/inbox, შემდეგ „გაყინვა“.
Idempotence key + seen ცხრილი (TTL) - დედაპლატი ხელახლა მიწოდებისას.
X- დასკვნითი: გაითვალისწინეთ ფანჯარა 'FinalityTime '/გამოწვევა; კრიტიკული ოპერაციები მიიღება მინიმალური მთლიანი ფინალით.
7) გადანაწილების ეკონომიკა
Surge შემწეობები: როდესაც რიგები/კუდები იზრდება, გადატვირთულ მარშრუტებზე wC.
მომწოდებლის Quality Factor (QF) გავლენას ახდენს მოცულობასა და გადახდაზე.
Budget limites: ყოველდღიური/საათის ღირებულება ჭერი და egress.
Treasury hooks: სტაბილური ხარისხის დომენები მიიღება take-rate/მოცულობით.
8) შესაბამისობა და გეო წესები
Fail-closed: ეჭვი სტატუსის შესახებ - ბლოკი, სახელმძღვანელო კვორუმი.
ZK Protos: ასაკობრივი დოქტრინა/გეო PDN გამჟღავნების გარეშე.
Export/retention policies: DA/egress რეგიონებში, საგადასახადო გადასახადები გადახდის გზაზე.
Geo-evasion guard: შემოვლითი ხელმოწერები + აუდიტი.
9) დაკვირვება და ალერტინგი
ტრეკერი: 'x _ msg _ id', 'route _ id', 'provider _ id', bridge/DA ეტაპი, საბოლოო.
მეტრიკა: p50/p95/p99, retry%, timeout%, duplicate/out-of-order%, queue depth, finality lag, cost/req, surge ინდექსი.
Дашборды: Reroute Live, Tail Heatmap, Queue/Finality Monitor, Cost-per-Route, Fairness Panel.
ალერტები: error-budget burn, flap-rate, DLQ depth, შესაბამისობის ბლოკები.
10) ინციდენტები (RCA) და დეგრადაციის პროტოკოლი
1. დეტაჟი (იხ. § 3) - მარშრუტის იზოლაცია (ტრიპი), აქციების გადანაწილება.
2. შემსუბუქება: downshift Q0/Q1, Q4/Q3 პრიორიტეტის გაძლიერება, „ხმაურიანი“ ნაკადების ლიმიტების გაჭრა.
3. ანაზღაურება: სადაზღვევო აუზიდან (S- გირაო, RNFT წესები).
4. პოსტ-mortem: მიზეზები, სასწორის/ლიმიტების კორექტირება, ხელმოწერების განახლება, რეჰარსალი.
11) ფორმულები და მითითებები
SuccessRate = 1 − (timeouts + errors)/requests
TailAmplification = p99/p50 (მიზანი: per QoS დერეფნები)
Headroom = (cap − current)/cap
Cost/Req = (რესურსი × კურსი )/წარმატებული _ მოთხოვნები
FairnessIndex (Jain) =
პროვაიდერის QualityFactor: (QF = f (\text {success}, p95, DLQ, finality))
SLO სახელმძღვანელო (მაგალითი):- Q4: success ≥ 99. 99%, p95-200 ms, DLQ = 0, MTTR - 15 წთ
- Q3: შეკვეთის დარღვევა 10 ევრო/2., p95-500 ms.
- DA/Bridge: საბოლოო - 3 × T _ block, ყალბი დადასტურებები = 0.
12 წ.) „“: წონაში/კვოტების/ფასების შეცვლის წესები
პროპოზები შეიცვალა (w), კვოტები, ტარიფები და QF ბონუსები.
ხმების R- მოდიფიკატორი მაღალი ხარისხის როლებისთვის (დერეფანი [0. 8..1. 2]).
Sunset კორექტირება: დროებითი ცვლილებები მანქანაში დაბრუნებით.
საჯარო მოხსენებები: გადანაწილების კვარტალური მეტრები და fairness აუდიტი.
13) განხორციელების ფლეიბუკი (ნაბიჯებით)
1. ნაკადების და მიზეზობრივი გასაღებების შერჩევა (QoS/რეგიონში/შესაბამისობაში).
2. ტელემეტრია და ნიმუშები: OWD/RTT/jitter/queue/finality/cost (EWMA + p95/p99).
3. Utility პოლიტიკოსები: per QoS წონის პროფილები, ღირებულების ბიუჯეტები, სურსათის დერეფნები.
4. კვოტები და შეფერხებები: პერის მარშრუტი/პროვაიდერი/კლასი.
5. მიწოდების გარანტიები: outbox/inbox, imempotence, სერიული ბარიერები.
6. Fairness & backpressure: WFQ/DRR, anti-noise, spillover tiers.
7. დაკვირვება: დაშბორდები, ალერტები, error ბიუჯეტები, DLQ/Replay.
8. თამაშის დღეები/ქაოსი: დომენის/ხიდის/DA ვარდნა, ფასების შოკი, გეო-ბლოკი.
9. ცხიმი: წონის/ლიმიტის/ფასების შეცვლის პროცედურები (პროპორციები, sunset).
10. მფრინავი - სკალირება: A/B პროფილები, რეტრო კალიბრი, საჯარო მოხსენება.
14) KPI გადანაწილების პროგრამები
მიწოდება: success კლასებში QoS, DLQ = 0 (Q3/Q4), duplicate/out-of-order.
შეფერხება: p95/p99 და TailAmplification სამიზნე დერეფნებში.
სტაბილურობა: MTTR საშუალო სამიზნე, flap rate.
ეკონომიკა: Cost/Req, SLO შენარჩუნებისას; „იაფი“ მარშრუტების წილის ზრდა.
სამართლიანობა: ჯეინი დერეფანში; „neisy neighbor“ - ის ინციდენტების შემცირება.
ფინალურობა/უსაფრთხოება: finality lag, 0 ყალბი მტკიცებულება.
შესაბამისობა: 100% geo/age/სანქციები, ნულოვანი დარღვევები.
15) Prod List მზადყოფნა
- განსაზღვრულია QoS, SLO/SLA, მიზეზის გასაღებები და შეცდომების ბიუჯეტები
- განხორციელდა utility პოლიტიკა, კვოტები და per route/provider ნიშნები
- ჩართულია consistent hashing, hot-shard relief, EDF/LLF (Q4)
- მიდრეკილია outbox/inbox, imempotence და სერიული ბარიერები
- WFQ/DRR, backpressure და spillover tiers მუშაობენ
- ხელმისაწვდომია dashbords latency/tail/queue/finality/cost და alerty
- შედის circuit breakers, DLQ/Replay და კომპენსაცია (S-Scrow)
- გაიმართა თამაშის დღეები/ქაოსი და შედგენილია პოსტ-mortems
- დაკავშირებულია კომპლექსის კარიბჭესთან და გადასახადების გადასახადებთან
- დამტკიცებულია წონის/ლიმიტის/ფასების შეცვლის პროცესი (sunset)
16) გლოსარიუმი
ტრაფიკის გადანაწილება: კონტროლირებადი reroute/რიგების/პროვაიდერების ხელახალი დანიშვნა.
Tail Amplification: p99/p50 - შეფერხებების „კუდის“ ძალა.
FinalityTime: ღონისძიების შეუქცევადობის დრო.
Utility-routing: ბილიკის არჩევანი საერთო კომუნალურობაზე.
WFQ/DRR: რიგების მომსახურების სამართლიანი დისციპლინა.
Spillover tiers: გადატვირთვის დროს „რბილი“ კლასების დაქვეითება batch/edge- ში.
Circuit breaker: დეგრადირებული მარშრუტის ავტომატური გამორთვა.
17) შედეგი
ტრაფიკის გადანაწილება არის სტაბილურობის საოპერაციო წრე: ჩვენ ვზომავთ, ვწყვეტთ და გადამისამართდება წესრიგის, საბოლოო და წესების დარღვევის გარეშე. Utility მარშრუტიზაციის, fairness/კვოტების ერთობლიობა, მკაცრი გარანტიები I- საკონტროლო მიწოდების შესახებ მრავალსართულიან ეკოსისტემად აქცევს ადაპტირებულ სისტემას, რომელსაც შეუძლია გაუძლოს მოთხოვნის მწვერვალებს, ინციდენტებს და ფასების შოკებს - სწრაფად, გულწრფელად და ეკონომიურად.