రోబ్లాక్స్ యొక్క మౌలిక సదుపాయాలను మేము మరింత సమర్థవంతంగా మరియు స్థితిస్థాపకంగా ఎలా చేస్తున్నాము

గత 16+ సంవత్సరాలుగా రాబ్లాక్స్ అభివృద్ధి చెందుతున్న కొద్దీ, లక్షలాది లీనమయ్యే 3D సహ-అనుభవాలకు మద్దతు ఇచ్చే సాంకేతిక మౌలిక సదుపాయాల పరిమాణం మరియు సంక్లిష్టత కూడా పెరిగాయి. మేము మద్దతు ఇచ్చే మెషీన్ల సంఖ్య గత రెండు సంవత్సరాలలో మూడు రెట్లు కంటే ఎక్కువ పెరిగింది, జూన్ 30, 2021 నాటికి సుమారు 36,000 నుండి ఈ రోజుకు దాదాపు 145,000కి చేరుకుంది. ప్రపంచవ్యాప్తంగా ఉన్న ప్రజల కోసం ఈ ఎల్లప్పుడూ-ఆన్ అనుభవాలను అందించడానికి 1,000 కంటే ఎక్కువ అంతర్గత సేవలు అవసరం. ఖర్చులు మరియు నెట్వర్క్ లేటెన్సీని నియంత్రించడంలో మాకు సహాయపడటానికి, మేము ఈ యంత్రాలను ప్రధానంగా ప్రాంగణంలోనే (on premises) నడిచే, ప్రత్యేకంగా నిర్మించిన మరియు హైబ్రిడ్ ప్రైవేట్ క్లౌడ్ మౌలిక సదుపాయాలలో భాగంగా మోహరించి నిర్వహిస్తాము.
మా మౌలిక సదుపాయాలు ప్రస్తుతం ప్రపంచవ్యాప్తంగా 70 మిలియన్లకు పైగా రోజువారీ చురుకైన వినియోగదారులకు మద్దతు ఇస్తున్నాయి, వీరిలో తమ వ్యాపారాల కోసం రాబ్లాక్స్ ఆర్థిక వ్యవస్థపై ఆధారపడే సృష్టికర్తలు కూడా ఉన్నారు. ఈ మిలియన్ల మంది ప్రజలందరూ చాలా అధిక స్థాయి విశ్వసనీయతను ఆశిస్తారు. మా అనుభవాల యొక్క లీనమయ్యే స్వభావం దృష్ట్యా, లాగ్స్ లేదా లేటెన్సీకి చాలా తక్కువ సహనం ఉంటుంది, అవుటేజ్ల గురించి చెప్పనవసరం లేదు. రాబ్లాక్స్ అనేది ఒక కమ్యూనికేషన్ మరియు కనెక్షన్ ప్లాట్ఫారమ్, ఇక్కడ ప్రజలు ఇమ్మర్సివ్ 3D అనుభవాలలో కలిసి వస్తారు. ప్రజలు ఒక ఇమ్మర్సివ్ ప్రదేశంలో వారి అవతార్ల రూపంలో సంభాషిస్తున్నప్పుడు, టెక్స్ట్ థ్రెడ్ లేదా కాన్ఫరెన్స్ కాల్ కంటే చిన్నపాటి ఆలస్యాలు లేదా గ్లిచ్లు కూడా ఎక్కువగా కనిపిస్తాయి.
అక్టోబర్ 2021లో, మేము సిస్టమ్-వ్యాప్త అంతరాయాన్ని ఎదుర్కొన్నాము. ఇది ఒక డేటా సెంటర్లోని ఒక కాంపోనెంట్లో ఒక సమస్యతో చిన్నదిగా ప్రారంభమైంది. కానీ మేము దర్యాప్తు చేస్తున్నప్పుడు అది వేగంగా వ్యాపించింది మరియు చివరికి 73 గంటల అంతరాయానికి దారితీసింది. ఆ సమయంలో, ఏమి జరిగిందనే దాని గురించి వివరాలు మరియు ఈ సమస్య నుండి మేము నేర్చుకున్న కొన్ని ప్రారంభ పాఠాలను పంచుకున్నాము. అప్పటి నుండి, మేము ఆ పాఠాలను అధ్యయనం చేస్తున్నాము మరియు తీవ్రమైన ట్రాఫిక్ స్పైక్లు, వాతావరణం, హార్డ్వేర్ వైఫల్యం, సాఫ్ట్వేర్ బగ్లు, లేదా కేవలం మానవ తప్పిదాల వంటి కారణాల వల్ల అన్ని పెద్ద-స్థాయి వ్యవస్థలలో సంభవించే వైఫల్యాలకు వ్యతిరేకంగా మా మౌలిక సదుపాయాల స్థితిస్థాపకతను పెంచడానికి కృషి చేస్తున్నాము. ఈ వైఫల్యాలు సంభవించినప్పుడు, ఒకే భాగంలో లేదా భాగాల సమూహంలో ఉన్న సమస్య మొత్తం వ్యవస్థకు వ్యాపించకుండా ఎలా నిర్ధారించుకోవాలి? గత రెండు సంవత్సరాలుగా ఈ ప్రశ్నే మా దృష్టిలో ఉంది మరియు ఈ పని ఇంకా కొనసాగుతున్నప్పటికీ, మేము ఇప్పటివరకు చేసిన పని ఇప్పటికే ఫలితాలనిస్తోంది. ఉదాహరణకు, 2022 మొదటి అర్ధభాగంతో పోలిస్తే, 2023 మొదటి అర్ధభాగంలో మేము నెలకు 125 మిలియన్ల ఎంగేజ్మెంట్ గంటలను ఆదా చేశాము. ఈ రోజు, మేము ఇప్పటికే చేసిన పనిని, అలాగే మరింత స్థితిస్థాపకమైన ఇన్ఫ్రాస్ట్రక్చర్ వ్యవస్థను నిర్మించడానికి మా దీర్ఘకాలిక దృష్టిని పంచుకుంటున్నాము.

బ్యాక్స్టాప్ను నిర్మించడం
పెద్ద-స్థాయి మౌలిక సదుపాయాల వ్యవస్థలలో, చిన్న స్థాయి వైఫల్యాలు రోజుకు చాలాసార్లు జరుగుతాయి. ఒక మెషీన్లో సమస్య తలెత్తి దానిని సర్వీస్ నుండి తీసివేయాల్సి వస్తే, అది నిర్వహించదగినది, ఎందుకంటే చాలా కంపెనీలు తమ బ్యాక్-ఎండ్ సేవల యొక్క బహుళ ఇన్స్టాన్స్లను నిర్వహిస్తాయి. కాబట్టి ఒకే ఇన్స్టాన్స్ విఫలమైనప్పుడు, ఇతరులు పనిభారాన్ని స్వీకరిస్తాయి. ఈ తరచు వైఫల్యాలను పరిష్కరించడానికి, అభ్యర్థనలకు సాధారణంగా ఒక ఎర్రర్ వస్తే అవి స్వయంచాలకంగా మళ్లీ ప్రయత్నించేలా సెట్ చేయబడతాయి.
ఒక సిస్టమ్ లేదా వ్యక్తి చాలా దూకుడుగా మళ్లీ ప్రయత్నించినప్పుడు ఇది సవాలుగా మారుతుంది, ఇది ఆ చిన్న-స్థాయి వైఫల్యాలు మొత్తం ఇన్ఫ్రాస్ట్రక్చర్లో ఇతర సేవలు మరియు సిస్టమ్లకు వ్యాపించడానికి ఒక మార్గంగా మారవచ్చు. నెట్వర్క్ లేదా వినియోగదారు పట్టువదలని విధంగా మళ్లీ ప్రయత్నిస్తే, అది చివరికి ఆ సేవ యొక్క ప్రతి ఇన్స్టాన్స్ను, మరియు బహుశా ఇతర సిస్టమ్లను కూడా ప్రపంచవ్యాప్తంగా అతిభారంతో కుంగదీస్తుంది. మా 2021 అవుటేజ్ పెద్ద స్థాయి సిస్టమ్లలో చాలా సాధారణంగా జరిగే ఒక సంఘటన ఫలితం: ఒక వైఫల్యం చిన్నగా మొదలై, ఆపై సిస్టమ్ అంతటా వ్యాపిస్తుంది, మరియు అంతా పనిచేయకుండా పోయే ముందు దాన్ని పరిష్కరించడం చాలా కష్టమయ్యేంత వేగంగా పెద్దదిగా మారుతుంది.
మా అవుటేజ్ సమయంలో, మాకు ఒక యాక్టివ్ డేటా సెంటర్ ఉండేది (దానిలోని కాంపోనెంట్లు బ్యాకప్గా పనిచేస్తున్నాయి). ఇప్పటికే ఉన్న డేటా సెంటర్లో ఏదైనా సమస్య వస్తే, మాన్యువల్గా కొత్త డేటా సెంటర్కు ఫెయిల్ ఓవర్ చేసే సామర్థ్యం మాకు అవసరమైంది. మా మొదటి ప్రాధాన్యత Roblox యొక్క బ్యాకప్ డిప్లాయ్మెంట్ను కలిగి ఉండేలా చూసుకోవడం, కాబట్టి మేము వేరే భౌగోళిక ప్రాంతంలో ఉన్న ఒక కొత్త డేటా సెంటర్లో ఆ బ్యాకప్ను నిర్మించాము. ఇది అత్యంత దారుణమైన పరిస్థితికి అదనపు రక్షణను జోడించింది: ఒక డేటా సెంటర్లోని తగినన్ని కాంపోనెంట్లకు అంతరాయం వల్ల అది పూర్తిగా పనిచేయకుండా పోవడం. ఇప్పుడు మా వద్ద ఒక డేటా సెంటర్ వర్క్లోడ్లను నిర్వహిస్తోంది (యాక్టివ్) మరియు మరొకటి బ్యాకప్గా స్టాండ్బైలో ఉంది (పాసివ్). మా దీర్ఘకాలిక లక్ష్యం ఈ యాక్టివ్-పాసివ్ కాన్ఫిగరేషన్ నుండి యాక్టివ్-యాక్టివ్ కాన్ఫిగరేషన్కు మారడం, దీనిలో రెండు డేటా సెంటర్లు వర్క్లోడ్లను నిర్వహిస్తాయి, మరియు లేటెన్సీ, సామర్థ్యం, మరియు ఆరోగ్యం ఆధారంగా ఒక లోడ్ బ్యాలెన్సర్ వాటి మధ్య అభ్యర్థనలను పంపిణీ చేస్తుంది. ఇది అమలులోకి వచ్చిన తర్వాత, రోబ్లాక్స్ మొత్తానికి మరింత అధిక విశ్వసనీయతను కలిగి ఉంటుందని మరియు అనేక గంటల సమయం తీసుకోవడానికి బదులుగా దాదాపు తక్షణమే ఫెయిల్ ఓవర్ చేయగలమని మేము ఆశిస్తున్నాము.

సెల్యులార్ ఇన్ఫ్రాస్ట్రక్చర్కు మారడం
ఒక డేటా సెంటర్ మొత్తం విఫలమయ్యే అవకాశాన్ని తగ్గించడానికి, ప్రతి డేటా సెంటర్ లోపల బలమైన బ్లాస్ట్ గోడలను సృష్టించడం మా తదుపరి ప్రాధాన్యత. సెల్స్ (కొన్ని కంపెనీలు వాటిని క్లస్టర్లు అని పిలుస్తాయి) అనేవి ప్రాథమికంగా యంత్రాల సమూహం మరియు ఈ గోడలను మేము సృష్టించే విధానం ఇదే. అదనపు రిడెండెన్సీ కోసం మేము సెల్స్ లోపల మరియు వాటి మధ్య సేవలను పునరుత్పత్తి చేస్తాము. చివరికి, రాబ్లాక్స్లోని అన్ని సేవలు సెల్స్లో నడవాలని మేము కోరుకుంటున్నాము, తద్వారా అవి బలమైన బ్లాస్ట్ గోడలు మరియు రిడెండెన్సీ రెండింటి నుండి ప్రయోజనం పొందగలవు. ఒక సెల్ పనిచేయడం ఆగిపోతే, దానిని సురక్షితంగా నిష్క్రియం చేయవచ్చు. సెల్స్ మధ్య రిప్లికేషన్, ఆ సెల్ మరమ్మతులో ఉన్నప్పుడు కూడా సేవ నిరంతరాయంగా కొనసాగేలా చేస్తుంది. కొన్ని సందర్భాల్లో, సెల్ మరమ్మతు అంటే ఆ సెల్ను పూర్తిగా తిరిగి ప్రొవిజనింగ్ చేయడం కావచ్చు. పరిశ్రమలో, ఒకే మెషీన్ను లేదా కొన్ని మెషీన్ల సమూహాన్ని వైప్ చేసి, తిరిగి ప్రొవిజనింగ్ చేయడం చాలా సాధారణం, కానీ ~1,400 మెషీన్లను కలిగి ఉన్న ఒక పూర్తి సెల్కు ఇలా చేయడం మాత్రం సాధారణం కాదు.
ఇది పని చేయడానికి, ఈ సెల్స్ చాలా వరకు ఏకరీతిగా ఉండాలి, తద్వారా మేము వర్క్లోడ్లను ఒక సెల్ నుండి మరొకదానికి వేగంగా మరియు సమర్థవంతంగా తరలించగలము. ఒక సెల్లో రన్ అవ్వడానికి ముందు సర్వీసులు కొన్ని నిర్దిష్ట అవసరాలను తీర్చాలని మేము నిర్దేశించాము. ఉదాహరణకు, సర్వీసులు కంటైనరైజ్ చేయబడి ఉండాలి, ఇది వాటిని మరింత పోర్టబుల్ చేస్తుంది మరియు OS స్థాయిలో ఎవరైనా కాన్ఫిగరేషన్ మార్పులు చేయకుండా నిరోధిస్తుంది. మేము సెల్స్ కోసం ఇన్ఫ్రాస్ట్రక్చర్-యాజ్-కోడ్ తత్వాన్ని స్వీకరించాము: మా సోర్స్ కోడ్ రిపోజిటరీలో, సెల్లో ఉండే ప్రతిదాని నిర్వచనాన్ని మేము చేర్చుతాము, తద్వారా మేము ఆటోమేటెడ్ టూల్స్ను ఉపయోగించి దానిని మొదటి నుండి త్వరగా పునర్నిర్మించగలము.
ప్రస్తుతం అన్ని సేవలు ఈ అవసరాలను తీర్చవు, కాబట్టి సేవా యజమానులు వీలైన చోట వాటిని తీర్చడంలో సహాయపడటానికి మేము కృషి చేసాము, మరియు సిద్ధంగా ఉన్నప్పుడు సేవలను సెల్స్లోకి తరలించడాన్ని సులభతరం చేయడానికి మేము కొత్త సాధనాలను నిర్మించాము. ఉదాహరణకు, మా కొత్త డిప్లాయ్మెంట్ టూల్ ఒక సర్వీస్ డిప్లాయ్మెంట్ను ఆటోమేటిక్గా సెల్స్లో "స్ట్రైప్స్" చేస్తుంది, కాబట్టి సర్వీస్ యజమానులు రిప్లికేషన్ వ్యూహం గురించి ఆలోచించాల్సిన అవసరం లేదు. ఈ స్థాయి కఠినత్వం వలన మైగ్రేషన్ ప్రక్రియ చాలా సవాలుతో కూడుకున్నదిగా మరియు ఎక్కువ సమయం తీసుకునేదిగా మారుతుంది, కానీ దీర్ఘకాలిక ప్రయోజనం ఏమిటంటే:
- ఒక వైఫల్యాన్ని నియంత్రించడం మరియు అది ఇతర సెల్స్కు వ్యాపించకుండా నిరోధించడం చాలా సులభం;
- మా ఇన్ఫ్రాస్ట్రక్చర్ ఇంజనీర్లు మరింత సమర్థవంతంగా మరియు వేగంగా పని చేయగలరు; మరియు
- చివరికి సెల్స్లో అమలు చేయబడే ప్రొడక్ట్-స్థాయి సేవలను నిర్మించే ఇంజనీర్లు, తమ సేవలు ఏ సెల్స్లో నడుస్తున్నాయో తెలుసుకోవలసిన అవసరం లేదా ఆందోళన చెందాల్సిన అవసరం లేదు.
పెద్ద సవాళ్లను పరిష్కరించడం
మంటలను అరికట్టడానికి ఫైర్ డోర్లను ఉపయోగించినట్లే, ఒకే సెల్లో వైఫల్యానికి దారితీస్తున్న ఏ సమస్యనైనా అరికట్టడంలో మా మౌలిక సదుపాయాలలో సెల్స్ బలమైన బ్లాస్ట్ వాల్స్గా పనిచేస్తాయి. కాలక్రమేణా, రాబ్లాక్స్ను రూపొందించే అన్ని సేవలు సెల్స్ లోపల మరియు వాటి మధ్య రెడెండెన్సీతో అమలు చేయబడతాయి. ఈ పని పూర్తయిన తర్వాత, సమస్యలు ఇప్పటికీ ఒక పూర్తి సెల్ను పనిచేయకుండా చేసేంత విస్తృతంగా వ్యాపించవచ్చు, కానీ ఒక సమస్య ఆ సెల్ నుండి మించి వ్యాపించడం చాలా కష్టం అవుతుంది. మరియు మనం సెల్స్ను పరస్పరం మార్చుకోగలిగేలా చేయడంలో విజయం సాధించినట్లయితే, రికవరీ చాలా వేగంగా ఉంటుంది, ఎందుకంటే మనం వేరొక సెల్కు ఫెయిల్ ఓవర్ చేయగలుగుతాము మరియు సమస్యను తుది వినియోగదారులను ప్రభావితం చేయకుండా నిరోధించగలుగుతాము.
లోపాలను వ్యాపించే అవకాశాన్ని తగ్గించడానికి ఈ సెల్స్ను తగినంతగా వేరు చేయడం, అదే సమయంలో వాటి పనితీరును మరియు కార్యాచరణను కొనసాగించడం ఇక్కడే క్లిష్టంగా మారుతుంది. ఒక సంక్లిష్టమైన మౌలిక సదుపాయాల వ్యవస్థలో, సేవలు క్వెరీలు, సమాచారం, వర్క్లోడ్లు మొదలైనవాటిని పంచుకోవడానికి ఒకదానితో ఒకటి సంభాషించాల్సి ఉంటుంది. మనం ఈ సేవలను సెల్స్గా పునరావృతం చేస్తున్నప్పుడు, క్రాస్-కమ్యూనికేషన్ను ఎలా నిర్వహించాలనే దాని గురించి మనం ఆలోచనాత్మకంగా ఉండాలి. ఆదర్శవంతమైన పరిస్థితిలో, మనం ఒక అనారోగ్యకరమైన సెల్ నుండి ట్రాఫిక్ను ఇతర ఆరోగ్యకరమైన సెల్స్కు మళ్లిస్తాము. కానీ ఒక "మరణపు క్వెరీ"ని—అంటే ఒక సెల్ను అనారోగ్యంగా మార్చే క్వెరీని—మనం ఎలా నిర్వహించాలి? ఆ క్వెరీని మనం మరొక సెల్కు మళ్లిస్తే, మనం నివారించాలనుకుంటున్న విధంగానే ఆ సెల్ కూడా అనారోగ్యం పాలు కావచ్చు. అనారోగ్యకరమైన సెల్స్ నుండి "మంచి" ట్రాఫిక్ను తరలించడానికి, అలాగే సెల్స్ను అనారోగ్యంగా మార్చే ట్రాఫిక్ను గుర్తించి, అణిచివేయడానికి మనం కొన్ని విధానాలను కనుగొనాలి.
స్వల్పకాలంలో, డేటా సెంటర్కు వచ్చే చాలా అభ్యర్థనలను ఒకే సెల్ ద్వారా పూర్తి చేయడానికి వీలుగా మేము ప్రతి కంప్యూట్ సెల్లో కంప్యూటింగ్ సేవల కాపీలను అమర్చాము. మేము సెల్స్లో ట్రాఫిక్ను లోడ్ బ్యాలెన్సింగ్ కూడా చేస్తున్నాము. భవిష్యత్తును దృష్టిలో ఉంచుకుని, మేము తదుపరి తరం సర్వీస్ డిస్కవరీ ప్రక్రియను నిర్మించడం ప్రారంభించాము, దీనిని ఒక సర్వీస్ మెష్ ఉపయోగించుకుంటుంది, దీనిని 2024లో పూర్తి చేయాలని మేము ఆశిస్తున్నాము. ఫెయిలోవర్ సెల్స్పై ప్రతికూల ప్రభావం చూపనప్పుడు మాత్రమే క్రాస్-సెల్ కమ్యూనికేషన్ను అనుమతించే అధునాతన విధానాలను అమలు చేయడానికి ఇది మాకు వీలు కల్పిస్తుంది. అలాగే 2024లో, డిపెండెంట్ అభ్యర్థనలను అదే సెల్లోని ఒక సర్వీస్ వెర్షన్కు మళ్లించే పద్ధతి రానుంది, ఇది క్రాస్-సెల్ ట్రాఫిక్ను తగ్గించి, తద్వారా వైఫల్యాల క్రాస్-సెల్ వ్యాప్తి ప్రమాదాన్ని తగ్గిస్తుంది.
అత్యధిక సమయంలో, మా బ్యాక్-ఎండ్ సర్వీస్ ట్రాఫిక్లో 70 శాతానికి పైగా సెల్స్ నుండి అందించబడుతోంది మరియు సెల్స్ను ఎలా సృష్టించాలో మేము చాలా నేర్చుకున్నాము, కానీ 2024 మరియు ఆ తర్వాత కూడా మేము మా సేవలను తరలిస్తూనే ఉన్నప్పుడు మరింత పరిశోధన మరియు పరీక్షను మేము ఊహించుకుంటున్నాము. మేము పురోగమిస్తున్న కొద్దీ, ఈ బ్లాస్ట్ వాల్స్ మరింత బలంగా మారతాయి.

ఎల్లప్పుడూ-ఆన్లో ఉండే మౌలిక సదుపాయాల వలస
రాబ్లాక్స్ ప్రపంచవ్యాప్తంగా ఉన్న వినియోగదారులకు మద్దతు ఇచ్చే ఒక గ్లోబల్ ప్లాట్ఫారమ్, కాబట్టి మేము ఆఫ్-పీక్ లేదా "డౌన్ టైమ్" సమయంలో సేవలను తరలించలేము, ఇది మా యంత్రాలన్నింటినీ సెల్స్లోకి మరియు ఆ సెల్స్లో నడపడానికి మా సేవలను తరలించే ప్రక్రియను మరింత క్లిష్టతరం చేస్తుంది. మేము వాటిని నడిపే మెషీన్లను మరియు వాటికి మద్దతు ఇచ్చే సేవలను తరలిస్తున్నప్పటికీ, కొనసాగించవలసిన మిలియన్ల కొద్దీ ఎల్లప్పుడూ-ఆన్లో ఉండే అనుభవాలు మా వద్ద ఉన్నాయి. మేము ఈ ప్రక్రియను ప్రారంభించినప్పుడు, వేలాది కొద్దీ మెషీన్లు ఉపయోగించకుండా పక్కన పడి ఉండటం మరియు ఈ వర్క్లోడ్లను వాటిపైకి తరలించడానికి అందుబాటులో ఉండటం మాకు లేదు.
అయితే, భవిష్యత్ వృద్ధిని దృష్టిలో ఉంచుకుని కొనుగోలు చేసిన కొన్ని అదనపు మెషీన్లు మా వద్ద ఉన్నాయి. ప్రారంభంలో, మేము ఆ మెషీన్లను ఉపయోగించి కొత్త సెల్స్ను నిర్మించాము, ఆ తర్వాత వాటికి వర్క్లోడ్లను తరలించాము. మేము సామర్థ్యానికి మరియు విశ్వసనీయతకు కూడా విలువ ఇస్తాము, కాబట్టి మా వద్ద "అదనపు" మెషీన్లు అయిపోయిన తర్వాత కొత్తవి కొనడానికి బదులుగా, మేము తరలించిన మెషీన్లను శుభ్రపరిచి, తిరిగి ప్రొవిజనింగ్ చేయడం ద్వారా మరిన్ని సెల్స్ను నిర్మించాము. ఆ తర్వాత మేము ఆ తిరిగి ప్రొవిజనింగ్ చేసిన మెషీన్లపై వర్క్లోడ్లను తరలించి, ఈ ప్రక్రియను మళ్లీ మొదటి నుండి ప్రారంభించాము. ఈ ప్రక్రియ సంక్లిష్టమైనది—యంత్రాలు భర్తీ చేయబడి, సెల్స్గా నిర్మించడానికి ఖాళీ అయినప్పుడు, అవి ఆదర్శవంతమైన, క్రమబద్ధమైన పద్ధతిలో ఖాళీ అవ్వవు. అవి డేటా హాల్స్లో భౌతికంగా విచ్ఛిన్నమై ఉంటాయి, దీనివల్ల మేము వాటిని చిన్న చిన్న భాగాలుగా కేటాయించాల్సి వస్తుంది, ఇది హార్డ్వేర్ స్థాయిలో డీఫ్రాగ్మెంటేషన్ ప్రక్రియను అవసరం చేస్తుంది, తద్వారా హార్డ్వేర్ లొకేషన్లను పెద్ద-స్థాయి భౌతిక వైఫల్య డొమైన్లకు అనుగుణంగా ఉంచవచ్చు.
మా ఇన్ఫ్రాస్ట్రక్చర్ ఇంజనీరింగ్ బృందంలోని కొంతమంది, మా పాత, లేదా "ప్రీ-సెల్," వాతావరణం నుండి సెల్స్లోకి ఇప్పటికే ఉన్న వర్క్లోడ్లను తరలించడంపై దృష్టి సారించారు. మేము వేలాది విభిన్న ఇన్ఫ్రాస్ట్రక్చర్ సేవలను మరియు వేలాది బ్యాక్-ఎండ్ సేవలను కొత్తగా నిర్మించిన సెల్స్లోకి తరలించే వరకు ఈ పని కొనసాగుతుంది. కొన్ని సంక్లిష్టతలను కలిగించే అంశాల కారణంగా, దీనికి వచ్చే ఏడాది మొత్తం మరియు బహుశా 2025 వరకు సమయం పడుతుందని మేము అంచనా వేస్తున్నాము. మొదటగా, ఈ పనికి బలమైన టూలింగ్ను నిర్మించాల్సి ఉంటుంది. ఉదాహరణకు, మేము కొత్త సెల్ను అమలు చేసినప్పుడు—మా వినియోగదారులపై ప్రభావం చూపకుండా—పెద్ద సంఖ్యలో సేవలను స్వయంచాలకంగా పునఃసమతుల్యం చేయడానికి మాకు టూలింగ్ అవసరం. మా మౌలిక సదుపాయాల గురించి ఊహలతో నిర్మించిన సేవలను కూడా మేము చూశాము. మేము సెల్స్లోకి మారుతున్నప్పుడు భవిష్యత్తులో మారగల విషయాలపై ఆధారపడకుండా ఉండేలా ఈ సేవలను మేము సవరించాలి. సెల్యులార్ ఆర్కిటెక్చర్తో సరిగా పనిచేయని తెలిసిన డిజైన్ ప్యాటర్న్ల కోసం వెతకడానికి ఒక మార్గాన్ని, అలాగే మైగ్రేట్ చేయబడిన ప్రతి సర్వీస్ కోసం ఒక పద్ధతిబద్ధమైన పరీక్షా ప్రక్రియను కూడా మేము అమలు చేశాము. ఈ ప్రక్రియలు, ఒక సర్వీస్ సెల్స్తో అనుకూలంగా లేకపోవడం వల్ల కలిగే వినియోగదారులకు సంబంధించిన ఏవైనా సమస్యలను ముందుగానే నివారించడంలో మాకు సహాయపడతాయి.
ఈ రోజు, దాదాపు 30,000 మెషీన్లు సెల్స్ ద్వారా నిర్వహించబడుతున్నాయి. ఇది మా మొత్తం ఫ్లీట్లో ఒక చిన్న భాగం మాత్రమే, కానీ ఇప్పటివరకు ఎటువంటి ప్రతికూల ప్రభావం లేకుండా ఈ మార్పు చాలా సున్నితంగా జరిగింది. ప్రతి నెలా మా సిస్టమ్లు 99.99 శాతం యూజర్ అప్టైమ్ను సాధించడమే మా అంతిమ లక్ష్యం, అంటే మేము ఎంగేజ్మెంట్ గంటలలో 0.01 శాతం కంటే ఎక్కువ అంతరాయం కలిగించము. పరిశ్రమ స్థాయిలో, డౌన్టైమ్ను పూర్తిగా తొలగించలేము, కానీ మా లక్ష్యం ఏదైనా Roblox డౌన్టైమ్ను దాదాపుగా గమనించలేని స్థాయికి తగ్గించడం.
మేము విస్తరిస్తున్నప్పుడు భవిష్యత్తుకు సన్నద్ధమవడం
మా ప్రారంభ ప్రయత్నాలు విజయవంతమవుతున్నప్పటికీ, సెల్స్పై మా పని ఇంకా పూర్తి కాలేదు. రాబ్లాక్స్ విస్తరిస్తూనే ఉన్నందున, ఈ మరియు ఇతర సాంకేతికతల ద్వారా మా సిస్టమ్ల సామర్థ్యం మరియు స్థితిస్థాపకతను మెరుగుపరచడానికి మేము పని చేస్తూనే ఉంటాము. మేము ముందుకు సాగుతున్న కొద్దీ, ప్లాట్ఫారమ్ సమస్యలకు మరింత స్థితిస్థాపకంగా మారుతుంది, మరియు ఏవైనా సమస్యలు సంభవించినా, అవి మా ప్లాట్ఫారమ్లోని వ్యక్తులకు క్రమంగా తక్కువగా కనిపిస్తాయి మరియు అంతరాయం కలిగించకుండా ఉంటాయి.
సారాంశంలో, ఇప్పటి వరకు, మేము:
- రెండవ డేటా సెంటర్ను నిర్మించి, యాక్టివ్/పాసివ్ స్థితిని విజయవంతంగా సాధించాము.
- మా యాక్టివ్ మరియు పాసివ్ డేటా సెంటర్లలో సెల్స్ను సృష్టించి, మా బ్యాక్-ఎండ్ సర్వీస్ ట్రాఫిక్లో 70 శాతానికి పైగా ఈ సెల్స్కు విజయవంతంగా తరలించాము.
- మేము మా మిగిలిన మౌలిక సదుపాయాలను తరలించడం కొనసాగిస్తున్నప్పుడు, అన్ని సెల్స్ను ఏకరీతిగా ఉంచడానికి మేము పాటించాల్సిన అవసరాలను మరియు ఉత్తమ పద్ధతులను అమలు చేశాము.
- సెల్స్ మధ్య బలమైన "బ్లాస్ట్ వాల్స్"ను నిర్మించే నిరంతర ప్రక్రియను ప్రారంభించాము.
ఈ సెల్స్ మరింతగా ఒకదానితో ఒకటి మార్చుకోగలిగేలా మారినప్పుడు, సెల్స్ మధ్య క్రాస్టాక్ తగ్గుతుంది. ఇది మానిటరింగ్, ట్రబుల్షూటింగ్, మరియు వర్క్లోడ్లను స్వయంచాలకంగా మార్చడం వంటి వాటి చుట్టూ ఆటోమేషన్ను పెంచడంలో మాకు కొన్ని చాలా ఆసక్తికరమైన అవకాశాలను అందిస్తుంది.
సెప్టెంబర్లో మేము మా డేటా సెంటర్ల అంతటా యాక్టివ్/యాక్టివ్ ప్రయోగాలను కూడా ప్రారంభించాము. విశ్వసనీయతను మెరుగుపరచడానికి మరియు ఫెయిలోవర్ సమయాలను తగ్గించడానికి మేము పరీక్షిస్తున్న మరొక విధానం ఇది. పూర్తిగా యాక్టివ్-యాక్టివ్గా మారే దిశగా మేము సాగుతున్నప్పుడు, డేటా యాక్సెస్కు సంబంధించిన అనేక సిస్టమ్ డిజైన్ నమూనాలను పునఃపరిశీలించాల్సిన అవసరాన్ని ఈ ప్రయోగాలు గుర్తించడంలో సహాయపడ్డాయి. మొత్తం మీద, మా పరిమిత సంఖ్యలో వినియోగదారుల ట్రాఫిక్ కోసం దీనిని నడుపుతూ ఉండేంతగా ఈ ప్రయోగం విజయవంతమైంది.



