आकार की सीमा / आदि / मेजबान (लिनक्स)


11

क्या किसी को यह जानने के लिए होता है कि प्रदर्शन में गिरावट देखने के लिए शुरू होने से पहले / etc / मेजबानों की सैद्धांतिक आकार सीमा क्या है?

इसके अलावा, क्या कोई मुझे कुछ आधिकारिक स्रोत की ओर इशारा कर सकता है जो बताता है कि अपेक्षित सीमा क्या है?


8
इससे मुझे लगता है कि आप सर्वोत्तम प्रथाओं के बाहर कुछ पागल या रास्ता कर रहे हैं। विवरण क्या हैं?
इविविट

3
निश्चित रूप से लगता है कि एक हल्के DNS रिज़ॉल्वर को तैनात करना एक बेहतर समाधान हो सकता है।
Zoredache

1
मेरे पास एक ग्राहक है जो यह अनुरोध कर रहा है। मैं कुछ प्रलेखन खोजने की उम्मीद कर रहा था कि मैं उन्हें दिखा सकता हूं कि यह मुद्दों का कारण क्यों होगा; इसके बजाय इसे एक परीक्षण मशीन पर आज़माने के लिए और इसे प्रदर्शित करने के लिए।
मिकप 90

1
मेजबानों की फाइल 1970 के दशक के पूर्व-DNS दिनों और 1980 के दशक की शुरुआत का अवशेष है। होस्ट फ़ाइल में सैकड़ों प्रविष्टियाँ होने से एक बुरे विचार के रूप में पहचाना जाता है जो बहुत पीछे था । यदि आपको आपकी 10 से अधिक प्रविष्टियाँ मिली हैं, तो आप शायद गलत रास्ते पर हैं।
माइकल हैम्पटन

जवाबों:


9

स्रोत , माइक का उपयोग करें

रिज़ॉल्वर प्रविष्टियों का पता लगाने के लिए पाठ फ़ाइल के माध्यम से एक रैखिक खोज का उपयोग करता है। यह एक डेटाबेस है जिसमें कोई इंडेक्स नहीं है। तो, एडिटोनल कैशिंग क्षमता के अभाव में, लुकअप की लागत O (n) होगी। जब तक कि प्रदर्शन में गिरावट होगी, जवाब देने के लिए एक असंभव सवाल है, यह हर रिकॉर्ड के साथ धीमा हो जाता है।

यदि आप एक डेटाबेस प्रोग्रामर या व्यवस्थापक से बात करते हैं, तो आपको उस बिंदु के लिए अलग-अलग आंकड़े मिलेंगे, जिस पर एक इंडेक्स लुकअप (O (log2 (n)) एक पूर्ण टेबल स्कैन से सस्ता है, लेकिन आम तौर पर उत्तर 20 के क्षेत्र में होगा) 100 रिकॉर्ड के लिए।

किसी भी लिनक्स सिस्टम को बहुत सारे नामों (न केवल होस्टनाम) को हल करने की आवश्यकता है। Nscd या समान चलना चाहिए। अधिकांश ऐसे कैश डेटा को स्वयं अनुक्रमित करेंगे, जो प्रदर्शन प्रश्न को स्पष्ट करेंगे, हालांकि ...

यह जटिल / बड़े डेटासेट के प्रबंधन के लिए कोई साधन प्रदान नहीं करता है - यदि आपके पास एक से अधिक आईपी पते के साथ एक होस्ट है, तो होस्ट्स फ़ाइल के माध्यम से लुकअप हमेशा पहली प्रविष्टि लौटाएगा।


1
लूप को बंद करने के लिए, हमने मेजबान फ़ाइल में 1.7 मिलियन रिकॉर्ड जोड़े और अनुमान लगाया कि यह प्रत्येक लुकअप में .5 सेकंड जोड़ा गया है। इस वातावरण में, .5 सेकंड नगण्य है। मुझे लगता है कि DNS सर्वर अभी भी एक बेहतर समाधान है, लेकिन ग्राहक वही चाहता है जो ग्राहक चाहता है।
माइकपी 90

5

इंटरनेट का थोड़ा सा इतिहास - इससे पहले कि DNS 1984 में तैनात किया गया था, मेजबानों की फाइल केवल नामों को हल करने के लिए थी, और नेटवर्क पर बहुत सारे मेजबान नहीं थे - फरवरी 1983 में 325 (आरएफसी 847)इंटरनेट-इतिहास के इतिहासकार के संग्रह में 1982 से HOSTS.TXT (हालांकि पठनीय नहीं, मशीन) की प्रतियां हैं । यहां तक ​​कि एक वैकल्पिक HOSTS.TXT (ज्योफ गुडफेलो) भी था


3

तकनीकी रूप से, कोई ऊपरी सीमा नहीं है। हालाँकि, प्रत्येक DNS लुकअप इस फ़ाइल को हिट करने वाला है, इसलिए अपने आप को उसके लिए खुला क्यों छोड़ें?

इसकी कीमत के लिए, /etc/hostsमैंने अपने वातावरण में जो सबसे बड़ी फ़ाइल वितरित की है वह 1,200 लाइनें थी। और उस एप्लिकेशन के लिए अच्छी तरह से काम कर रहा हूं जिसे मैं प्रबंधित कर रहा था। DNS उस विशेष वातावरण में एक विकल्प नहीं था।


चलो इसे एक और तरीका है। यदि कर्नेल में कोई अनुक्रमण नहीं है, तो प्रत्येक हिट एक रेखीय खोज करेगा जो कि समय के अनुसार कैश आकार पर निर्भर करेगा।
हिरण

4
मैं इंटरनेट पर पाई जाने वाली एक लोकप्रिय होस्ट फ़ाइल का उपयोग करता हूं, 15,430 लाइनें हैं और मुझे वेब सर्फिंग प्रदर्शन में कोई वास्तविक गिरावट नहीं है।
बर्ट

@DeerHunter मुझे नहीं लगता कि यूनिक्स कर्नेल में कुछ भी है जो होस्टनाम लुकअप करता है।
बरमार

बर्ट के नोट पर +1। मैंने सिर्फ 22,000 लाइनों के साथ एक कस्टम फ़ाइल का उपयोग किया है और इसने प्रदर्शन को प्रभावित नहीं किया है। यह परीक्षण प्रयोजनों के लिए उपयोगी है!
जोश कोनिग
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.