GH GambleHub

संतुलन और असफलता लोड करें

संतुलन और असफलता लोड करें

1) उद्देश्य और शर्तें

संतुलन प्रदर्शन और लचीलापन के लिए उदाहरणों/क्षेत्रों/क्षेत्रों में यातायात वितरित करता है।

असफलता - नियंत्रित असफलता।

आरटीओ/आरपीओ - रिकवरी समय उद्देश्य और स्वीकार्य डेटा हानि।

एसएलओ: उपलब्धता/विलंबता का लक्ष्य स्तर; स्वचालित फीलओवर और रोलबैक के लिए "गेट" के रूप में कार्य करता है।

2) परतों को संतुलित करना

2. 1 L4 (TCP/UDP)

पेशेवरों: प्रदर्शन, सादगी, टीएलएस पासथ्रो। विपक्ष: कोई मार्ग समझ/कुकीज़नहीं।

उदाहरण: NLB/GLB, HAProxy/Envoy L4, IPVS।

2. 2 L7 (HTTP/gRPC)

पेशेवरों: पथ मार्ग/हेडर, कैनरी वजन, चिपचिपा। विपक्ष: सीपीयू/विलंबता में अधिक महंगा।

उदाहरण: NGINX/HAProxy/Envoy/Cloud ALB/API गेटवे।

2. 3 वैश्विक

DNS/GSLB: स्वास्थ्य-जांच + भू/भारित प्रतिक्रिया।

Anycast/BGP: दुनिया भर में एक IP, निकटतम घोषणा बिंदु।

सीडीएन/एज: परिधि पर कैश/फीलओवर।

3) वितरण एल्गोरिदम

राउंड-रॉबिन/भारित - मूल।

कम से कम कनेक्शन/विलंबता - "भारी" अनुरोध के लिए।

लगातार हैशिंग - केंद्र सत्र के बिना उपयोगकर्ता/किरायेदार चिपचिपाहट।

हैश-आधारित इलाके - कैश और स्टेटफुल सेवाओं के लिए।

4) सत्र और चिपचिपा

कुकी-चिपचिपा: L7 LB उदाहरण पर लौटने के लिए एक कुकी सेट करता है।

Src-IP चिपचिपा: L4 पर, NAT/CGNAT के साथ बदतर।

सुसंगत हैशिंग: क्षैतिज कैश/चैट के लिए बेहतर।

लक्ष्य: यदि संभव हो, तो स्टेटलेस सेवा करें, अन्यथा - असफलता को सरल बनाने के लिए राज्य (रेडिस/डीबी में सत्र) को बाहर निकालें।

5) विश्वसनीयता: स्वास्थ्य-जांच और रोटेशन से हटाना

सक्रिय जांच: HTTP 200/डीप बिजनेस पाथ प्रोब (उदा। निर्भरता के साथ '/healthz/वापस लेना ')।

निष्क्रिय (बाहरी पहचान): 5xx/टाइमआउट पर बैकएंड इजेक्शन।

वार्म-अप: नए उदाहरणों का चिकना समावेश (धीमी गति से शुरू)।

सुंदर नाली - पूल से निकालें - अनुरोधों को पूरा करने के लिए प्रतीक्षा करें।

NGINX (उदाहरण):
nginx upstream api {
zone api 64k;
least_conn;
server app-1:8080 max_fails=2 fail_timeout=10s;
server app-2:8080 max_fails=2 fail_timeout=10s;
keepalive 512;
}
proxy_next_upstream error timeout http_502 http_503 http_504;
proxy_next_upstream_tries 2;
दूत बाहरी पहचान (टुकड़ा):
yaml outlier_detection:
consecutive_5xx: 5 interval: 5s base_ejection_time: 30s max_ejection_percent: 50

6) दोष प्रबंधन: टाइमआउट/रीट्री/सर्किट-ब्रेकिंग

टाइमआउट: क्लाइंट टाइमआउट से कम; प्रति-मार्ग निर्दिष्ट करें।

रेट्रीज़: जिटर और आइडेम्पोटेंसी के साथ 1-2; निष्क्रियता कुंजियों के बिना POST पर निषेध।

सर्किट ब्रेकर: एक साथ अनुरोधों/त्रुटियों को सीमित करना; "अर्ध-खुला" वसूली।

बजट: स्व-डीडीओएस की व्यवस्था नहीं करने के लिए फटने की सीमा/विलय।

7) कुबर्नेट्स-पैटर्न

ClusterIP/NodePort/LoadBalancer/Ingress - मूल आदिम।

तत्परता/जीवन: केवल तैयार बोर्डों पर यातायात।

PodDis बजट एक ही समय में N प्रतिकृतियों को नहीं छोड़ सकता है।

HPA/VPA: CPU/RED मैट्रिक्स द्वारा स्केलिंग, LB से लिंक।

सर्विसटोपोलॉजी/टोपोलॉजी अवेयर संकेत: ज़ोन द्वारा इलाके।

सेवा प्रकार = LoadBalancer (क्षेत्रीय): प्रत्येक AZ में कम से कम 2 प्रतिकृतियाँ।

एक महत्वपूर्ण मार्ग के लिए तत्परता का एक उदाहरण:
yaml readinessProbe:
httpGet: { path: /healthz/dependencies, port: 8080 }
periodSeconds: 5 failureThreshold: 2

8) क्रॉस-ज़ोन और क्रॉस-क्षेत्रीय याताया

मल्टी-एजेड (क्षेत्र के भीतर): समान रूप से (जोनल एलबी), भंडारण - तुल्यकालिक प्रतिकृतियां वितरित करें।

बहु-क्षेत्र:
  • सक्रिय-सक्रिय: दोनों क्षेत्र यातायात की सेवा कर अधिक जटिल - आपको डेटा प्रतिकृति, स्थिरता और भौगोलिक मार्ग की आवश्यकता है।
  • सक्रिय-निष्क्रिय: मुख्य क्षेत्र सेवा करता है, आरक्षित - "गर्म/गर्म/ "आसान, तेज स्विचिंग, लेकिन उच्च आरपीओ।
जीएसएलबी रणनीतियाँ:
  • जियो-डीएनएस (निकटतम क्षेत्र)।
  • भारित डीएनएस (कैनरी/पुनर्वितरण)।
  • विलंबता-आधारित (आरटीटी माप)।
  • विफल = स्वास्थ्य/उपलब्धता संकेतों द्वारा (कई सहूलियत बिंदुओं से जांच)।

9) डेटा और विफलता

कैश/राज्य: यदि संभव हो - क्षेत्रीय रूप से स्थानीय; सक्रिय-सक्रिय के लिए - CRDT/सुसंगत हैश।

DB:
  • तुल्यकालिक प्रतिकृति = कम आरपीओ, उच्च विलंबता।
  • अतुल्यकालिक = कम विलंबता, लेकिन RPO> 0।
  • कतारें: मिररिंग/मल्टीक्लस्टर टॉपिकल्स; घटना deduplication।
  • संचालन और पुनरावृत्ति यांत्रिकी की डिजाइन पहचान।

10) परिधि: DNS/Anycast/BGP/CDN

DNS: शॉर्ट TTL (30-60 के दशक) + आपके नेटवर्क से स्वास्थ्य-जांच।

Anycast: एक IP के साथ कई POPs - निकटतम एक यातायात प्राप्त करता है, फीलओवर रूटिंग स्तर पर है।

सीडीएन/एज: सुरक्षा के लिए कैश और "गेटवे", स्थिर/मीडिया को तब सेवित किया जाता है जब मूल गिरता है; मूल-ढाल + пер -POP स्वास्थ्य।

11) नमूना विन्यास

HAProxy L7:
haproxy defaults timeout connect 2s timeout client 15s timeout server 15s retries 2 option redispatch

backend api balance leastconn option httpchk GET /healthz/dependencies http-check expect status 200 server app1 app-1:8080 check inter 5s fall 2 rise 2 slowstart 3000 server app2 app-2:8080 check inter 5s fall 2 rise 2 slowstart 3000
NGINX चिपचिपा по कुकी:
nginx upstream api {
hash $cookie_session_id consistent;
server app-1:8080;
server app-2:8080;
}
दूत पुन: प्रयास/टाइमआउट (मार्ग):
yaml route:
timeout: 2s retry_policy:
retry_on: 5xx,connect-failure,reset num_retries: 1 per_try_timeout: 500ms

12) स्वचालित विफलता: संकेत और द्वार

टेक-एसएलआई: 5xx-दर, p95/p99, संतृप्ति, टीएलएस हैंडशेक, टीसीपी रीसेट।

व्यवसाय एसएलआई: जमा/संवितरण की सफलता, पीएसपी में कोई भुगतान त्रुटि नहीं।

गेट्स: यदि थ्रेसहोल्ड पार हो जाते हैं, तो ज़ोन/उदाहरण को बंद कर दें, स्थिर पूल का वजन बढ़ाएं, जीएसएलबी स्विच करें।

रनबुक: चरण-दर-चरण रोलबैक निर्देश।

13) टेस्ट और निरीक्षण (अराजकता और खेल-दिन)

अराजकता परीक्षण: AZ/क्षेत्रों को अक्षम करना, DB/cache गिरावट, पैकेट-हानि सिमुलेशन।

गेम-डे: ऑन-कॉल टीमों की विशेषता वाला फेयलोवर प्रशिक्षण।

निदान: परिधि से बैकेंड तक ट्रेसिंग, रिलीज एनोटेशन और मेट्रिक्स से मेल खाता है।

14) सुरक्षा और अनुपालन

परिधि पर LB↔servisy, WAF/दर सीमा के बीच mTLS।

विफलता/विभाजन क्षेत्र: विस्फोट-त्रिज्या अलगाव।

नीतियां: विफलता का एकल बिंदु (SPOF) निषेध, "न्यूनतम N प्रतिकृतियां/AZ" के लिए आवश्यकताएं।

15) एंटी-पैटर्न

सभी यातायात (SPOF) के लिए एक LB/एक क्षेत्र।

कोई गहरी जाँच '/healthz '(हरा - लेकिन DB/कतार अनुपलब्ध)।

बिना पहचान के रिट्रे - डबल लेनदेन/भुगतान।

बड़े पैमाने पर NAT → असंतुलन के साथ प्रति IP स्टिकी।

डीएनएस फीलओवर उच्च टीटीएल के साथ (स्विच करने से पहले घंटे)।

जब कमी - अनुरोध टूटने पर कोई सुंदर नाली नहीं।

16) कार्यान्वयन चेकलिस्ट (0-45 दिन)

0-10 दिन

AZ ≥2 को पोस्ट उदाहरण; तत्परता/जीवनयापन, स्वास्थ्य-जांच सक्षम करें।

कॉन्फ़िगर करें (1 प्रयास), बाहरी पहचान।

सुंदर नाली और धीमी गति से शुरू सक्षम करें।

11-25 दिन

परिधि के लिए GSLB (भू/भारित) या Anycast भरें।

कैनरी वजन/मार्ग नीतियां; कुकी/सुसंगत हैश के माध्यम से चिपचिपा।

ऑटो-फीलओवर (p95/5xx + बिजनेस SLI) के लिए SLO द्वार।

26-45 दिन

क्षेत्रीय डीआर: अनुवाद परीक्षण के साथ सक्रिय-सक्रिय या सक्रिय-निष्क्रिय।

AZ/क्षेत्रों के साथ अराजकता के दिन, RTO/RPO रिपोर्ट।

स्वचालित रनबुक 'और (ठहराव/शिफ्ट/रोलबैक स्क्रिप्ट)।

17) परिपक्वता मैट्रिक्स

मल्टी-एज़कवरेज ≥ 99% महत्वपूर्ण रास्ते।

DNS/GSLB/Anycast को सार्वजनिक समापन बिंदुओं के लिए लागू किया जाता है।

MTTR जब एक AZ गिरता है <5 मिनट (p95)।

महत्वपूर्ण डेटा के लिए RPO ≤ लक्ष्य (उदाहरण के लिए, ≤ 30 सेकंड)।

त्रैमासिक खेल-दिन और सफल अनुसूचित फीलओवर।

18) निष्कर्ष

विश्वसनीय संतुलन और विफलता एक स्तरित वास्तुकला है: स्थानीय L7-policies (टाइमआउट/रेट्रीज ़/सीबी, हेल्थ-चेक), सही चिपचिपाहट और हैशिंग, क्रॉस-ज़ोन स्थिरता और परिधि पर - जीएसएलबी/डीएनएस/एनीकास्ट। एसएलओ गेट, पहचान, सुंदर नाली और नियमित अराजकता परीक्षण जोड़ें - और नोड, ज़ोन या यहां तक कि क्षेत्र का कोई भी नुकसान अनुमानित आरटीओ/आरपीओ के साथ एक प्रबंधनीय घटना बन जाएगा।

Contact

हमसे संपर्क करें

किसी भी प्रश्न या सहायता के लिए हमसे संपर्क करें।हम हमेशा मदद के लिए तैयार हैं!

इंटीग्रेशन शुरू करें

Email — अनिवार्य है। Telegram या WhatsApp — वैकल्पिक हैं।

आपका नाम वैकल्पिक
Email वैकल्पिक
विषय वैकल्पिक
संदेश वैकल्पिक
Telegram वैकल्पिक
@
अगर आप Telegram डालते हैं — तो हम Email के साथ-साथ वहीं भी जवाब देंगे।
WhatsApp वैकल्पिक
फॉर्मैट: देश कोड और नंबर (उदा. +91XXXXXXXXXX)।

बटन दबाकर आप अपने डेटा की प्रोसेसिंग के लिए सहमति देते हैं।