JackCode ნავიგაციაშექმენით, გაუშვით და მასშტაბირეთ iGaming-პროდუქტები.
ენის შეცვლა
პრაქტიკული გზამკვლევი

Throttling და Circuit Breaker

Throttling და circuit breaker - API დასაცავად მექანიზმები გადატვირთვისა და კასკადისგან: მაქსიმალური დატვირთვა და არასტაბილური სერვისების ავტომატური გათიშვა.
ექსპერტი სტანისლავ ანისიმოვი

მაღალი დატვირთვით და მრავალი ინტეგრაციით, მნიშვნელოვანია არა მხოლოდ მასშტაბის მასშტაბები, არამედ გადატვირთვისა და ზვავის მსგავსი ჩავარდნების თავიდან აცილება.

ამისათვის გამოიყენება ორი ძირითადი მექანიზმი:
  • Throttling - აკონტროლებს რეალურ დროში მოთხოვნის სიხშირეს, Circuit Breaker - არღვევს ზარის ჯაჭვს დამოკიდებულ სერვისებში ჩავარდნის დროს.

ისინი იცავს API- ს დაცემისგან, ზრდის სისტემის უუნარობას და ეხმარება სტაბილური მუშაობის შენარჩუნებას, თუნდაც ნაწილობრივი გაუმართაობით.

რა არის throttling

მახასიათებლები აღწერა
სიხშირის შეზღუდვა მოთხოვნის რაოდენობის კონტროლი მოცემულ დროში (RPS, RPM)
მოქნილი კონფიგურაცია endpoint ლიმიტები, გასაღები, მომხმარებელი ან IP
გლუვი გამორთვა დატვირთვის სრული დაბლოკვის გარეშე შემცირება

რა არის circuit breaker

ფუნქცია რას აკეთებს
შეცდომების მონიტორინგი აკონტროლებს შეცდომების/ტაიმაუტის სიხშირეს API ან გარე სერვისში
ზარების გამორთვა დროებით ბლოკავს გამოწვევებს წარუმატებლობის ბარიერის მიღწევისას
ავტომატური აღდგენა სტაბილიზაციის დროს ხელმისაწვდომობისა და ზარების ჩართვის შემოწმება

როგორ ვრეაგირებთ

ბიბლიოთეკების გამოყენება (მაგალითად, Resilience4j, Hystrix, Envoy, Kong)

შეზღუდვების კონფიგურაცია შესასვლელთან და ლოგიკაში

მოვლენების ლოგიკა და წარუმატებლობის/აღდგენის მეტრიკა

შეტყობინებები, როდესაც ხდება circuit breaker და გამტარუნარიანობის მკვეთრი ვარდნა

ინტეგრაცია Prometheus, Datadog, Grafana მონიტორინგისთვის

უპირატესობები

სისტემის „დაშლისგან“ დაცვა დამოკიდებულია წარუმატებლობებზე

სტაბილურობა დატვირთვის ქვეშ და ინციდენტების დროს

პრობლემური კომპონენტების იზოლაცია და API- ს საიმედოობის გაზრდა

გამარტივებული გამართვა და სწრაფი რეაქცია ანომალიებზე

მიკრო სერვისის არქიტექტურაში კასკადის ჩავარდნების პრევენცია

სადაც განსაკუთრებით მნიშვნელოვანია

API ურთიერთქმედებს გადახდის კარიბჭეებთან და გარე ბანკებთან

მიკრო სერვისის არქიტექტურა მრავალი დამოკიდებულებით

პროგრამები მილიონობით მომხმარებელთან და მაღალი კონკურენცია რესურსებისთვის

შეფერხებების მგრძნობიარე რეალური პლატფორმები


Throttling და circuit breaker არის სტრატეგიული API გადარჩენის მექანიზმები. ჩვენ წარმოგიდგენთ დაცვას, რომელიც საშუალებას მისცემს თქვენს მომსახურებას დარჩეს სტაბილური, სწრაფი და პროგნოზირებადი, თუნდაც ყველაზე არასტაბილურ პირობებში.