Logo GH

परिचालन और → प्रबंधन ऑपरेशनल इंफ्रास्ट्रक्चर स्केलिंग

ऑपरेशनल इन्फ्रास्ट्रक्चर स्केलिंग

1) क्यों और क्या "स्केलिंग" माना जाता है

SLO को खोए बिना और नियंत्रित लागत पर थ्रूपुट (RPS/TPS, कनेक्शन, IOPS, थ्रूपुट) और डेटा वॉल्यूम को बढ़ाने के लिए प्लेटफ़ॉर्म की सिस्टम क्षमता है। IGaming/fintech के लिए, यह सीधे पैसे के बारे में है: जमा/शर्त रूपांतरण, लाइव गेम और बस्तियाँ।

उद्देश्य:
  • एक्स-फोल्ड लोड ग्रोथ और मौसमी चोटियों पर एसएलओ रखें।
  • पूर्वानुमानित स्केलिंग समय (मिनट, घंटे नहीं) प्रदान करें।
  • अर्थव्यवस्था बचाएं: लागत/आरपीएस, लागत/लेनदेन, लागत/1k घटना।

2) स्केलेबल प्लेटफॉर्म सिद्धांत

1. क्षैतिज-पहला: छोटी, स्टेटलेस सेवाओं में विभाजन; स्थिति - डेटा समूहों में।

2. बैक-प्रेशर और कतारें: चिकनी फटना, "तूफान" से सुरक्षा।

3. सभी परतों पर कैशिंग: क्लाइंट/एज/सर्विस/डेटाबेस।

4. पहचान और दोहराव: सुरक्षित रिट्रीट, आउटबॉक्स, डेडअप।

5. विवश निर्भरता: टाइमआउट, ब्रेकर, बल्कहेड अलगाव, दर-सीमा।

6. क्षमता संकेतों द्वारा अवलोकन: हेडरूम, p95/p99, लैग, कनेक्शन, कोटा।

7. गार्ड रेल के साथ ऑटो-स्केलिंग: एचपीए/वीपीए/क्लस्टर ऑटोस्केलर + स्टॉप स्थिति।

8. डिजाइन द्वारा बहु-क्षेत्र: स्वतंत्र विस्फोट क्षेत्र, स्थानीय डेटा, स्

3) क्षमता योजना: "आपको कितनी आवश्यकता है" की गणना कैसे करें

मॉडल इनपुट: लक्ष्य पीक टीपीएस, ट्रैफिक प्रोफाइल (प्रति घंटा), "महत्वपूर्ण पथ", कैश हिट अनुपात, औसत पेलोड, एसएलओ और प्रदाता सीमा।

त्वरित आकलन (नियम-के-अंगूठे):
  • RPS CPU/पॉड्स: 'पॉड्स = RPS _ _ CPU _ in _ pod' (30-50% के मार्जिन के साथ)।
  • कतारें: 'न्यूनतम _ स्पीड _ ऑफ _ उपभोक्ता _ पीक _ स्पीड _ ऑफ _ प्रोड्यूसर्स 1। 2`.
  • DB कनेक्शन: 'max _ conns = active _ service _ pool _ size 1। 3`.
  • कैश: आकार = "एन मिनट में गर्म कार्य-सेट" + 20-30% मार्जिन।
  • एग्रेस/सीडीएन: पीक एग्रेस = पीक अनुरोध औसत प्रतिक्रिया आकार (संपीड़न पर विचार करें)।

हेडरूम: चरम पर 20-40% लक्ष्य (परत द्वारा)। 15% से नीचे - "क्षमता उत्थान" ट्रिगर।

4) परतें और स्केलिंग पैटर्न

4. 1 एज/सीडीएन/डब्ल्यूएएफ

एज कैशिंग (TTL + SWR), भू-संतुलन, संपीड़न, HTTP/2/3।

IP/JWT/कुंजी द्वारा परिधि पर दर-सीमा, वृद्धि संरक्षण।

इवेंट फैन-आउट (जैकपॉट, लाइव अलर्ट) दलालों/पब/उप चैनलों के माध्यम से।

4. 2 बैकेंड-फॉर-फ्रंटेंड एपीआई गेटवे

स्टेटल द्वारा क्षैतिज स्केलिंग, नीचे की ओर समर्पित पूल।

बिजनेस मैट्रिक्स द्वारा एचपीए: आरपीएस, पी 99, वर्क पूल कतार - न केवल सीपीयू।

4. 3 अतुल्यकालिक कतारें/स्ट्रीमिंग (काफ्का/खरगोश/पल्सर)

पार्टियों और उपभोक्ताओं द्वारा स् तिरछा (चाबियाँ और वितरण) से बचें।

लैग अलर्ट + उपभोक्ताओं के ऑटो-स्केलिंग; DLQ और पुन: प्रयास विषय।

एसएलए सामंजस्य और पुनरावृत्ति के तहत प्रतिधारण।

4. 4 कैश (रेडिस/मेमकैच)

क्लस्टर मोड, प्रतिकृति, निष्कासन नीतियां (एलएफयू), मल्टीगेट, पाइपलाइन।

हॉट-की और बैकग्राउंड टास्क, क्लाइंट लिमिट और मैक्स-मेमोरी पॉलिसी का अलगाव।

4. 5 डेटाबेस

प्रतिकृति पढ़ें और रूटिंग, कनेक्शन पूलिंग।

क्षेत्र/किरायेदार/कुंजी रेंज द्वारा भागीदारी।

CQRS: मास्टर/लीडर को लिखता है, प्रतिकृतियों को पढ़ ता है।

इंडेक्सिंग और बैच-राइटिंग वर्कफ़्लो (आउटबॉक्स → स्ट्रीम → सिंक)।

संग्रह और गर्म/ठंडा डेटा (tiering)।

4. 6 फ़ाइल/वस्तु भंडार

मल्टीथ्रेडिंग, मल्टीपार्ट डाउनलोड, सीडीएन-फ्रंट, अतुल्यकालिक परिवर्तन।

प्रदाता कोटा, पूंछ की सफाई और बजट।

4. 7 प्रदाता (PSP/KYC/स्टूडियो)

बहु-विक्रेता और उद्धरण/एसएलओ/लागत मार्ग।

प्रत्येक प्रदाता के लिए सर्किट ब्रेकर + दर-सीमा, रिट्रे कतार, "अनुग्रह मोड"।

5) ऑटो-स्केलिंग और गार्ड रेल

कुबेरनेट्स:
  • HPA: метрики 'rps _ per _ pod', 'कतार _ depth', 'p99 _ latency'; 'लक्ष्य - मूल्य'.
  • वीपीए: संसाधन दिशानिर्देश; शिखर से बाहर अद्यतन।
  • क्लस्टर ऑटोस्केलर: प्राथमिकताओं के साथ स्पॉट + ऑन-डिमांड प्रोफाइल।
  • PodDis बजट/ToploySuderComments: क्षेत्रों में एक समान।
  • रेंज/रिसोर्सकोटा: "नशे" की कमी से सुरक्षा।
एचपीए छद्म घोषणापत्र:

apiVersion: autoscaling/v2 kind: HorizontalPodAutoscaler spec:
scaleTargetRef: {apiVersion: apps/v1, kind: Deployment, name: api-gw}
minReplicas: 8 maxReplicas: 200 metrics:
- type: Pods pods:
metric:
name: rps_per_pod target:
type: AverageValue averageValue: "120"
- type: Pods pods:
metric:
name: p99_latency_ms target:
type: AverageValue averageValue: "280"
behavior:
scaleUp:
stabilizationWindowSeconds: 90 scaleDown:
stabilizationWindowSeconds: 300
गार्ड (उदाहरण):
  • "ठहराव और रोलबैक", यदि कैनरी p99> 1 के साथ। 3 × बेसलाइन 10 मिनट।
  • प्राइम टाइम में "फ्रीज स्केल-डाउन", केवल स्केल-अप।
  • अड़ चनों के लिए 'ओपन _ सर्किट = 1' पर "स्टॉप रिट्रीज़"।

6) बहु-क्षेत्र: परिसंपत्ति/संपत्ति और परिसंपत्ति/दायित्व

विस्फोट-पृथक क्षेत्र: स्वतंत्र समूह, स्थानीय रहस्य/कोटा।

वैश्विक मार्ग: लेटेंसी-/भू-आधारित, स्वास्थ्य-जांच, मैनुअल ओवरराइड।

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

7) नेटवर्क और सेवा पैटर्न

सेवा मेश: एमटीएलएस, रीट्री/ब्रेकर, बाहरी पहचान, प्रति-डाउनस्ट्रीम सीमा।

eBPF/अवलोकन L4/L7, कनेक्शन सीमा, हेड-ऑफ-लाइन सुरक्षा पर।

S2S, सामान्य दर-सीमा और ऑडिट के लिए आंतरिक एपीआई प्रवेश द्वार।

विस्फोट क्षेत्रों, NAT/Egress नियंत्रण द्वारा VPC/सबनेट, विक्रेताओं के साथ सहकर्मी।

8) प्रदर्शन: परीक्षण और प्रमाण

प्राइमटाइम + सबसे खराब स्थिति में तनाव लोड करें।

भिगोना (लंबा) - मेमोरी/डिस्क्रिप्टर लीक, विलंबता वृद्धि।

अराजकता/खेल-दिन: ब्रोकर/प्रदाता/ज़ोन ड्रॉप, "धीमा प्रदाता।"

CI में Perf regression: संदर्भ परिदृश्यों और स्वचालित द्वार का एक सेट।

मिनी-परिदृश्य मैट्रिक्स:
परिदृश्यउद्देश्यदहलीज
टीपीएस × 2 जमा करेंपीक भुगतानp99 ≤ 350ms, SR ≥ 99। 5%
जैकपॉट प्रसारणफैन मिसWS कनेक्शन ≤ 90% सीमा, कोई बूंद नहीं
केवाईसी मंदीबाहरी प्रदाताऑटोडिग्रेडेशन + फीलोवर ≤ 2 मिनट

9) डेटा और भंडारण: विकास रणनीतियाँ

छत के लिए ऊर्ध्वाधर विकास → क्षैतिज/शार्डिंग।

पढ़ें → प्रतिकृति/कैश; रिकॉर्ड → बैच/asynchron/log।

स्कीमा पलायन: विस्तार → माइग्रेट → अनुबंध, कोई वैश्विक ताला नहीं।

संग्रह: सस्ते भंडारण + ऑन-डिमांड री-हाइड्रेशन के लिए ठंडे बैच।

खोज: वृद्धिशील अद्यतन पाइपलाइन के साथ व्यक्तिगत सूचकांक (OpenSearch/Solr)।

10) प्रदाताओं और कोटा का प्रबंधन करें

कोटा कार्ड (टीपीएस, विंडो, लागत); अलर्ट का उपयोग _ अनुपात> 0। 9`.

लागत/गुणवत्ता (स्मार्ट रूटिंग) द्वारा अनुमार्

OLA ↔ SLO समझौते और कोटा वृद्धि प्रक्रिया।

विकल्पों का पूल और "हॉट" स्विचिंग।

11) अवलोकन और स्केलिंग संकेत

मेट्रिक्स (न्यूनतम):
  • क्षमता हेडरूम по слоям; 'कतार _ लैग/बैकलॉग वृद्धि'; 'काफ्का आईएसआर'; 'डीबी कनेक्शन '/' रेपल लैग'; 'redis evictions'; 'open _ circut '/' retry _ usage'; 'कोटा _ usage'।
  • व्यावसायिक मैट्रिक्स: सफलता दर/जमा रूपांतरण, खेल शुरू समय।
  • लागत: लागत/आरपीएस, लागत/1k कॉल।
डैशबोर्ड:
  • क्षमता अवलोकन (हेडरूम, शीर्ष जोखिम, बर्न-रेट एसएलओ)।
  • स्ट्रीम और कतार पैनल (लैग/बैकलॉग, उपभोक्ता संतृप्ति)।
  • DB & Cache (p99, कनेक्शन, हिट/निष्कासन)।
  • प्रदाता और उद्धरण (टीपीएस, टाइमआउट, लागत, स्विचिंग)।
  • सुरक्षा बदलें (प्री/पोस्ट रिलीज, कैनरी, ऑटोगेट्स)।
अलर्ट (विचार):

ALERT HeadroomLowAPI
IF capacity_headroom{layer="api"} < 0. 15 FOR 10m

ALERT KafkaBacklogAtRisk
IF (consumer_lag > 5e6 AND rate(consumer_lag[5m]) > 5e4) AND (hpa_desired == hpa_max) FOR 10m

ALERT DBConnectionsNearMax
IF active_conns / max_conns > 0. 85 FOR 5m

ALERT ProviderQuota90
IF usage_quota_ratio > 0. 9 FOR 5m

12) फिनोप्स: स्केलिंग लाभदायक है

दक्षता अनुपात: लागत/आरपीएस, लागत/जमा, लागत/1k घटना।

राइट-साइज़िंग: वीपीए/सिफारिशें, अति-प्रावधान रिपोर्ट।

गैर-महत्वपूर्ण के लिए स्पॉट/प्रस्तावना; बेसलोड के लिए आरक्षित/प्रतिबद्ध।

एग्रेस बजट और कैशिंग, सीडीएन/एज ऑफ़ लोड।

मूल्य स्तर (गर्म बनाम ठंडा) द्वारा लॉग का संग्रह और संग्रह।

विस्तार के लिए चेतावनी कोटा (सॉफ्ट-कैप) और ऑटो-टिकट।

13) प्रक्रियाएं और लोग

परिवर्तन प्रबंधन: कैनरी, फिचफ्लैग, रीग्रेशन में रुकता है।

हादसा-तत्परता: रनबुक 'और "कहां क्षमता जोड़ ना है", "क्षेत्र कैसे स्विच करें"।

शेड्यूलिंग चोटियाँ: मैच/टूर्नामेंट/अभियान कैलेंडर और प्रदाता खिड़कियां।

नियमित खेल के दिन और डीआर अभ्यास।

स्वामित्व मैट्रिक्स: जो फीलओवर पर "बटन दबाते हैं "/कोटा बढ़ाते हैं।

14) कार्यान्वयन चेकलिस्ट

मूल स्केलेबिलिटी शुरू करना (2-4 सप्ताह):
  • महत्वपूर्ण रास्तों और सीमाओं का नक्शा (परत द्वारा), हेडरूम लक्ष्य ≥ 30%।
  • बिजनेस मेट्रिक्स + क्लस्टर ऑटोस्केलर द्वारा एचपीए; PDB/Srediftrants।
  • गर्म रास्तों पर कतारें, पहचान-कुंजी, आउटबॉक्स।
  • कैश: हिट गोल - 90%, निष्कासन नीति, प्रमुख सूचकांक।
  • डीबी: प्रतिकृति, कनेक्शन पूल, शार्डिंग योजना पढ़ें।
  • प्रदाता: मल्टी-वेंडर, कोटा, ब्रेकर/रिट्रीट।
  • डैशबोर्ड "क्षमता/स्ट्रीम/डीबी/प्रदाता", 11 से अलर्ट करता है।
  • कैनरी और प्री-/पोस्ट-रिलीज़ऑटोगेट्स।
  • डीआर प्लेबुक और एक आंशिक फीलओवर प्रशिक्षण।
एक प्रमुख शिखर से पहले:
  • कैश वार्मिंग, प्री-स्केल एचपीए/एएसजी, वार्म-स्टैंडबाय प्रतिकृतियां।
  • प्रदाता कोटा बढ़ाएं, स्मार्ट रूटिंग सक्षम करें।
  • गैर-महत्वपूर्ण अलर्ट के लिए नाइट-मोड दमन सक्षम करता है।
  • "सुरक्षित मोड" सुविधा तत्काल सक्रियण के लिए तैयार है।

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

क्षैतिज के बजाय लंबवत उन्नयन "पूर्ण विराम"।

सभी डाउनस्ट्रीम पर थ्रेड्स/कनेक्शन का एक सामान्य हेड-ऑफ-लाइन पूल।

अड़ चन समय पर रेट्राई, जिटर - तूफान की कमी।

अलर्ट और पैमाने की नीतियों में कोई हिस्टेरिसिस नहीं है - "आरी।"

डेटा शार्डिंग और स्थानीयकरण के बिना एकल वैश्विक डेटाबेस।

टाइमआउट/रिट्रे/ऑब्जर्वेबिलिटी कंट्रोल के बिना विक्रेता एसडीके में अंधा विश्वास।

डीआर अभ्यास की कमी: फीलओवर "केवल कागज पर"।

16) स्केलेबिलिटी केपीआई

शिखर पर एसएलओ अनुपालन (p95/p99, सफलता दर)।

प्राइम टाइम में परत द्वारा हेडरूम।

MTTS (स्केल करने का औसत समय) - जब तक अतिरिक्त संसाधन उपलब्ध नहीं हैं।

बैकलॉग/लैग रिज़ॉल्यूशन टाइम - शिखर के बाद कतारें गिरने का समय।

सक्रिय वृद्धि की अवधि के लिए विफलता दर बदलें।

कैश/सीडीएन/एज ऑफ़ लोड से लागत/आरपीएस और बचत।

डीआर तत्परता: व्यायाम में आरटीओ/आरपीओ।

17) "त्वरित" टेम्पलेट के उदाहरण

काफ्का: उपभोक्ताओं की भागीदारी और ऑटोस्केल (विचार):

partitions(topic="bets") = ceil(peak_msgs_per_sec / target_msgs_per_partition)
consumers = min(partitions, max_pods); rebalance_on: skew > 1. 5x scale_up_if: lag > 5e5 && rate(lag[5m]) > 5e4
PostgreSQL:

max_connections = poolers pool_size 1. 3 read_routing: primary (write), replicas (read majority)
shard_key: tenant_id or region_id
रेडिस:

maxmemory-policy: allkeys-lfu cluster-replicas: 1 evict-alert: rate(evictions[5m]) > 0 && used_mem/limit > 0. 8
कैनरी ऑटोगेट नीति (सारांश):

guardrails:
- metric: api_p99_ms, threshold: 1. 3 baseline_1d, window: 10m, action: pause_and_rollback
- metric: error_rate, threshold: 2 baseline_1d, window: 5m, action: pause max_step: 10%
step_interval: 15m

18) एफएक्यू

प्रश्न: पहले पैमाने पर क्या करें?

A: डैशबोर्ड के अनुसार अड़ चनें: कतारें/कैश/डेटाबेस पढ़ ता है। गर्म रास्ते (जमा/शर्त/गेम लॉन्च) एक प्राथमिकता है।

प्रश्न: यह कैसे समझें कि ऑटो-स्केलिंग "इसे बदतर बनाती है"?

A: सहसंबंध देखें: स्केल- up↑, और p99/त्रुटियां सुधरती नहीं हैं - शायद आप "समस्या को स्केल" (संकीर्ण स्ट्रीम/कोटा)। ब्रेकर/गिरावट शामिल करें।

प्रश्न: क्या आपको हमेशा दूसरे प्रदाता की आवश्यकता है?

A: महत्वपूर्ण रास्तों के लिए, हाँ। अन्यथा, एक सरलीकृत स्क्रिप्ट और कैश के साथ कम से कम "सुरक्षित मोड"।

प्रश्नः सक्रिय-सक्रिय или सक्रिय-निष्क्रिय?

A: यदि आरटीओ की आवश्यकताएं कम हैं और कई क्षेत्रीय खिलाड़ी सक्रिय हैं। अन्यथा, एक प्रयुक्त feilover के साथ सक्रिय-निष्क्रिय के साथ शुरू करें।

Contact

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

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

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

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

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

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