सवाल फेसबुक के या विकिपीडिया के आईपी पते पर हार्डवेयर सुनने का क्या टुकड़ा है?


मैं समझने की कोशिश कर रहा हूं कि मेरी बौद्धिक जिज्ञासा के लिए फेसबुक या विकिपीडिया जैसी बड़ी साइटें कैसे काम करती हैं। मैंने स्केलेबल साइटों के निर्माण के लिए विभिन्न तकनीकों के बारे में पढ़ा है, लेकिन मैं अभी भी एक विशेष विवरण के बारे में परेशान हूं।

जो हिस्सा मुझे भ्रमित करता है वह यह है कि आखिरकार, DNS पूरे डोमेन को एक आईपी पते, या राउंड-रॉबिन DNS के मामले में कुछ हद तक आईपी पते पर मैप करेगा।

उदाहरण के लिए, wikipedia.org में केवल एक प्रकार-ए DNS रिकॉर्ड है। इसलिए, विकिपीडिया का दौरा करने वाले दुनिया भर के लोगों को DNS में निर्दिष्ट एक आईपी पते पर एक अनुरोध भेजना है।

हार्डवेयर का टुकड़ा क्या है जो एक विशाल साइट के लिए आईपी पते पर सुनता है, और यह पूरी दुनिया में उपयोगकर्ताओं के अनुरोधों से आने वाले सभी भार को कैसे संभाला जा सकता है?

संपादित करें 1: प्रतिसाद के लिए धन्यवाद! कोई भी एक व्यवहार्य उत्तर की तरह लगता है ... क्या किसी को यह जांचने का तरीका पता है कि कोई विशेष आईपी पता किसी भी तरह का मार्ग है, ताकि मैं यह सत्यापित कर सकूं कि यह वास्तव में बड़ी साइटों द्वारा अभ्यास में उपयोग की जाने वाली चाल है?

2 संपादित करें: विषय पर और पढ़ने के बाद, ऐसा लगता है कि किसी भीकास्ट को आमतौर पर गतिशील वेब सामग्री के लिए उपयोग नहीं किया जाता है। एनाकास्ट आमतौर पर यूडीपी (उदाहरण के लिए, DNS लुकअप), या कभी-कभी स्थैतिक सामग्री के लिए उपयोग किया जाता है।

ध्यान देने योग्य एक दिलचस्प बात यह है कि फेसबुक स्टाइल शीट्स और जावास्क्रिप्ट पुस्तकालयों जैसी स्थिर सामग्री होस्ट करने के लिए profile.ak.fbcdn.net का उपयोग करता है। प्रत्येक बार जब मैं इस नाम को पिंग करता हूं, तो मुझे एक अलग आईपी पते से प्रतिक्रिया मिलती है। हालांकि, मैं यह नहीं बता सकता कि यह कार्रवाई में किसी भी तरह का है, या एक पूरी तरह से अलग तकनीक है।

मेरे मूल प्रश्न पर वापस: जहां तक ​​मैं कह सकता हूं, यहां तक ​​कि एक बड़ी साइट में लोड-बैलेंसिंग हार्डवेयर का एक महंगा हिस्सा होगा जो इसके सार्वजनिक आईपी पते के मुट्ठी भर सुन रहा है।


32
2018-02-16 00:56


मूल


महान प्रश्न, बहुत बुरे ज्यादातर लोग इसे समझ में नहीं आते हैं। मुझे आशा है कि किसी के पास कुछ विवरणों के साथ जवाब होगा। शायद कुछ 50 मिलियन डॉलर सिस्को क्वांटम कंप्यूटिंग संचालित लोड बैलेंसर। - OliverS


जवाब:


यह आवश्यक रूप से हार्डवेयर का एक टुकड़ा नहीं है बल्कि एक पूर्ण प्रणाली है जिसे स्केल करने के लिए डिज़ाइन किया गया है। यह न केवल हार्डवेयर को शामिल करता है बल्कि अधिक महत्वपूर्ण रूप से एप्लिकेशन डिज़ाइन, डेटाबेस डिज़ाइन (रिलेशनल या अन्यथा), नेटवर्किंग, स्टोरेज और वे सभी एक साथ कैसे फिट होते हैं।

आपकी जिज्ञासा के लिए एक अच्छी शुरुआत बिंदु यह पता लगाने के लिए कि बड़ी साइटों में से कुछ कैसे हैं उच्च स्केलेबिलिटी - यहां शुरू करें तथा विकिमीडिया वास्तुकला पर उच्च स्केलेबिलिटी, फेसबुक तथा ट्विटर उदाहरण के रूप में।

DNS और एकल आईपी पते और राउंड-रॉबिन के बारे में आपके प्रश्न के बारे में अक्सर इन प्रकार की साइटों का उपयोग किया जाएगा भार संतुलन एक आईपी पता पेश करने की एक विधि के रूप में। यह या तो विशेष हार्डवेयर लोड बैलेंसर्स या सामान्य प्रयोजन सर्वर पर चल रहे सॉफ़्टवेयर के माध्यम से किया जा सकता है। लोड बैलेंसर द्वारा प्रबंधित आईपी के आने वाले अनुरोध तब अंत उपयोगकर्ता को पारदर्शी रूप से सर्वरों की एक श्रृंखला में वितरित किए जाते हैं।

इस विषय पर एक अच्छी व्याख्या के लिए, हार्डवेयर और सॉफ़्टवेयर लोड बैलेंसर्स / प्रॉक्सी की तुलना और वे DNS राउंड रॉबिन से तुलना कैसे करते हैं, इसके बारे में पढ़ना है भार संतुलन वेब अनुप्रयोगों


9
2018-02-16 01:23



धन्यवाद, सिम। मैंने अपने प्रश्न पूछने से पहले इन लेखों में से अधिकांश के माध्यम से पढ़ा, लेकिन मुझे ठोस जवाब नहीं मिला। तो, वास्तव में एक हार्डवेयर लोड बैलेंसर (या एक मशीन चलने वाले लोड-बैलेंसिंग सॉफ़्टवेयर) है जो हर बार कोई विकिपीडिया पेज देखता है? या, बाधा से बचने के लिए कहीं और चाल है? - Igor Ostrovsky
मुझे यकीन नहीं है कि विकिपीडिया अब क्या कर रहा है लेकिन 2008 से यह आलेख स्क्विड रिवर्स प्रॉक्सी सर्वरों की एक श्रृंखला का उपयोग करके उनके बारे में बात करता है blogs.sun.com/WebScale/entry/scaling_wikipedia_with_lamp_7 - Sim
ऐसे यूकास्ट पते भी हैं जहां आप एक आईपी-एड्रेस पिंग करते हैं लेकिन उन्हें "वास्तविक" अंतराल की एक श्रृंखला में से एक को यादृच्छिक रूप से \ मनमाने ढंग से \ जानबूझकर वितरित किया जाता है। मुझे यकीन नहीं है कि विकिपीडिया \ Google इसका उपयोग करता है लेकिन मुझे यकीन है कि कुछ रूट DNS सर्वर करते हैं। विकिपीडिया से मेरे पिंग्स आपका मिलान करते हैं (और मैं आयरलैंड में हूं) इसलिए मुझे संदेह है कि वे इसका उपयोग कर रहे हैं। - Helvick
आपके पास आईपी पता प्राप्त करने के लिए किसी भी प्रश्न का उपयोग DNS क्वेरी में किया जाता है - फिर लोड बैलेंसर उस आईपी पते पर सुनता है और बैकिंग सर्वर को अनुरोध वितरित करता है। - Andy Shellam
विकिपीडिया भी अपने लोड संतुलन के लिए पीडीएनएस के जियोप बैकएंड का उपयोग करता है। यहां अधिक जानकारी: wikitech.wikimedia.org/view/PowerDNS और यहाँ: wikitech.wikimedia.org/view/DNS - faultyserver


एनाकास्ट का उपयोग टीसीपी कनेक्शन के लिए भी किया जा सकता है, मानते हैं कि कनेक्शन अल्पकालिक हैं इसलिए कनेक्शन जीवनकाल के दौरान मार्ग नहीं बदलते हैं। यह HTTP कनेक्शन के साथ एक अच्छी धारणा है (विशेष रूप से यदि कनेक्शन: Keep-Alive को कम समय या अक्षम में रखा जाता है)।

कई सीडीएन (कैशफ़ली, मैक्ससीडीएन, और शायद कई अन्य) वास्तव में टीसीपी कनेक्शन (HTTP) के लिए किसी भी कंट्रास्ट का उपयोग करते हैं, न केवल DNS। जब आप कैशफ़्लि पर होस्टनाम को हल करते हैं, तो आपको दुनिया भर में एक ही आईपी पता मिलता है, यह केवल "निकटतम" कैशफ़्ली क्लस्टर पर जाता है। यहां "निकटतम" बीजीपी पथ की लंबाई और मीट्रिक के संदर्भ में होगा, जो आमतौर पर सरल भौगोलिक दूरी की तुलना में नेटवर्क विलंबता को मापने का एक बेहतर तरीका है।

विकिपीडिया के मामले में विशेष रूप से: http://www.datacenterknowledge.com/archives/2008/06/24/a-look-inside-wikipedias-infrastructure/


3
2018-02-16 13:50





यह सत्यापित करने का सबसे आसान तरीका है कि कोई आईपी पता एनाकास्ट का उपयोग कर रहा है, अलग-अलग स्थान से ट्रैसरआउट करना है। आप निम्न का प्रयास कर सकते हैं: traceroute.org पर जाएं, एक स्थान चुनें और आईपी पते 8.8.8.8 (Google सार्वजनिक DNS जो किसी भीका का उपयोग करते हैं) में ट्रेसआउट करने का प्रयास करें। आपको ऑस्ट्रेलिया में सर्वर से ट्रैसरआउट देखने में सक्षम होना चाहिए ऑस्ट्रेलिया में 8.8.8.8 रहने के लिए।

पिंग के बजाय, होस्टनाम लुकअप करने का प्रयास करें: उदाहरण: http://network-tools.com/default.asp?prog=dnsrec&host=profile.ak.fbcdn.net

आप उस नाम के पीछे आईपी पते की सूची देखेंगे। जब आप सर्वर को पिंग करते हैं तो ये आईपी पते राउंड-रॉबिन फैशन में उपयोग किए जाएंगे।


3
2018-02-17 06:05



Traceroute सर्वर की सूची बहुत बढ़िया है, धन्यवाद! - Igor Ostrovsky
सम्बंधित: serverfault.com/q/178319/87017 - Pacerier


इगोर, आपका प्रश्न बहुत अच्छा है, और कई निर्दोष प्रश्नों की तरह, विवरण के विभिन्न स्तरों पर, कई सारे जवाब हैं।

हार्डवेयर का टुकड़ा एक वेब सर्वर है। जाहिर है ;-)

हार्डवेयर का टुकड़ा वास्तव में लोड बैलेंसर्स का समूह है, जिनमें से सभी साझा स्टोरेज से खींचने के लिए कॉन्फ़िगर किए गए हैं, इसलिए वे सभी समान सामग्री के साथ समान रूप से कॉन्फ़िगर किए गए हैं।

हार्डवेयर का टुकड़ा वास्तव में लोड बैलेंसर्स के कई समूहों में से एक है, भौगोलिक रूप से फैल गया है, और आपको DNS सर्वर द्वारा किए गए एक निर्णय के लिए आपके निकटतम को निर्देशित किया गया था।


2
2018-02-16 03:00





Google ने पिछले साल अपने घर के हार्डवेयर हार्डवेयर आर्किटेक्चर पर कुछ जारी किया और यह एक बनाता है अच्छा पढ़ा


1
2018-02-16 01:41



यह एक दिलचस्प पढ़ा है, लेकिन यह मेरे विशेष प्रश्न का उत्तर नहीं देता है। मैं विशेष रूप से उत्सुक हूं कि हार्डवेयर का टुकड़ा कौन सा है जो चार Google के सार्वजनिक आईपी पते पर सुनता है, और हजारों सर्वरों के बीच लोड वितरित करता है? - Igor Ostrovsky


एक एकल आईपी पता जरूरी नहीं है कि एक सर्वर हो: http://en.wikipedia.org/wiki/Anycast 


1
2018-02-16 02:53



यदि आपके पास कुछ केंद्रीय सिंक्रनाइज़ेशन (फेसबुक की तरह) है, तो बनाए रखने के लिए Anycast एक कठिन सेटअप है। यह उदाहरण के लिए वास्तव में अच्छा काम करता है DNS सर्वर, जहां उदाहरणों को अधिक संचार, या स्थैतिक सामग्री वाले वेब सर्वर की आवश्यकता नहीं होती है।
आप सही हैं कि एक ही आईपी का मतलब एक सर्वर नहीं है, लेकिन किसी भी प्रश्न का उपयोग DNS क्वेरी में किया जाता है जब आप परेशान नहीं होते हैं जब तक आप एक प्राप्त करते हैं, और इसलिए यह केवल यूडीपी प्रोटोकॉल के साथ उपयोगी है DNS उपयोग करता है। टीसीपी (HTTP में प्रयुक्त) के साथ आपको यह सुनिश्चित करने की ज़रूरत है कि जिस सर्वर का जवाब है वह वह है जिसे आपने विशेष रूप से पूछा था। - Andy Shellam
@ एंडीशेलम, लेख en.wikipedia.org/wiki/Anycast#Details  nanog.org/meetings/nanog37/presentations/matt.levine.pdf आपके साथ असहमत लगता है ... - Pacerier


बड़ी साइटें कई अलग-अलग तकनीकों का एक साथ उपयोग करती हैं। जिन वेबसाइटों का आपने उल्लेख किया है, वे लगभग हर देश में कई सर्वर हैं। वेबसाइट विज़िटर के आईपी पते के आधार पर DNS सर्वर क्लस्टर का आईपी पता वापस दे रहा है जो विज़िटर के नजदीकी है। अकामाई ऐसी सेवा प्रदान कर रहा है (अधिक जानकारी के लिए इस वेबसाइट पर तस्वीर पर क्लिक करें।)

इस डेटासेंटर में उन "क्लस्टर" में अब कई अलग-अलग मशीनों (डीबी सर्वर, वेब सर्वर, लोड बैलेंसर इत्यादि) शामिल हैं। आप अपनी वेबसाइट के साथ जो कुछ भी प्रदान कर रहे हैं उसके आधार पर आपके पास स्थिर सामग्री आदि के लिए कुछ सर्वर हो सकते हैं।


1
2018-02-16 14:21