2010-09-21 6 views
10

एरलांग गलती सहिष्णु कैसे है, या उस संबंध में सहायता?एरलांग गलती सहिष्णु कैसे है, या उस संबंध में सहायता?

+3

मेरी इच्छा है कि लोग डाउनवॉट्स को समझाएंगे, क्योंकि किसी ऐसे व्यक्ति से परिचित नहीं है जो कम से कम कुछ रोचक जानकारी प्रदान कर सकता है। –

+6

अच्छी तरह से मुख्य पृष्ठ का कहना है कि यह गलती सहनशील है, यह उत्सुक था कि यह कैसे प्रदान करता है? – Blankman

उत्तर

1

एरलांग कई प्रक्रियाओं को बनाने में आसान बनाता है, और उन प्रक्रियाओं की निगरानी करने में आसान बनाता है। जब उनमें से एक प्रक्रिया दुर्घटनाग्रस्त हो जाती है, तो पूरी चीज को नीचे लाने की आवश्यकता के बिना सिस्टम के उस हिस्से को पुनरारंभ करना संभव हो सकता है।

आपने विंडोज के आधुनिक संस्करणों में ऐसा कुछ देखा होगा: सिस्टम क्रैश होने पर ग्राफिक्स ड्राइवर को पुनरारंभ कर सकता है; यह पूरी प्रणाली को मार नहीं देता है।

गलती-सहनशील अनुप्रयोगों को लिखना आसान बनाने के लिए, एरलांग पर्यवेक्षक प्रक्रियाओं की अवधारणा प्रदान करता है। ये प्रक्रियाएं कई बाल प्रक्रियाओं की निगरानी करती हैं, और जानती हैं कि अगर कोई बच्चा मर जाता है तो जवाब कैसे दिया जाए। आप एक संपूर्ण पर्यवेक्षण वृक्ष बना सकते हैं, ताकि आपके पास इस बात का अच्छा नियंत्रण हो कि आवेदन के विभिन्न हिस्सों का व्यवहार कैसे किया जाता है। आप in the Erlang documentation पढ़ सकते हैं।

2

चेतावनी: मैं एक एरलांग नोब हूं।

@ डैनियल का जवाब अनिवार्य रूप से सही है। मैं दृढ़ता से सुझाव देता हूं कि आप एरलांग निर्माता जो आर्मस्ट्रांग के thesis (सॉफ़्टवेयर त्रुटियों की उपस्थिति में विश्वसनीय वितरित सिस्टम बनाना) पढ़ने के लिए समय दें। थीसिस मजबूत वितरित सिस्टम विकसित करने के लिए, और समाधान की आवश्यकता का एक अच्छा स्पष्टीकरण प्रदान करता है। मेरा मानना ​​है कि पेपर संतोषजनक रूप से आपके प्रश्न का उत्तर देगा।

+0

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

4

मुझे लगता है कि मैंने this reply to another thread में उत्तर का हिस्सा शामिल किया है।

+1

अन्य धागे में आपका उत्तर काफी पूरा है। रुचि रखने वाले हर किसी को निश्चित रूप से एक नज़र रखना चाहिए। –

3

Erlang गलती निम्न बातें ध्यान में साथ सहिष्णु है:

  • Erlang जानता है कि त्रुटियों होगा, और चीजों को टूट जाएगा, इसलिए बजाय त्रुटियों के खिलाफ की रक्षा की, Erlang आप मजबूत उपकरण प्रभाव को कम करने के लिए है की सुविधा देता है त्रुटियों की और उनके द्वारा ठीक होने के बाद से ठीक हो जाते हैं।

  • एरलांग आपको सफलता के मामले के लिए कार्यक्रम के लिए प्रोत्साहित करता है, और यदि आंशिक रूप से टूटा हुआ डेटा पुनर्प्राप्त करने के बिना कुछ भी गलत हो जाता है तो क्रैश होता है। इसके पीछे विचार यह है कि आंशिक रूप से गलत डेटा आपके सिस्टम में आगे बढ़ सकता है और डेटाबेस में लिखा जा सकता है, और इस प्रकार आपके सिस्टम को जोखिम प्रदान करता है। इसे जल्दी से छुटकारा पाने के लिए बेहतर और केवल डेटा को पूरी तरह से सही रखें।

  • एरलांग में प्रक्रिया अलगाव आंशिक रूप से गलत डेटा के प्रभाव को कम करने में मदद करता है जब यह प्रकट होता है और फिर प्रक्रिया क्रैश की ओर जाता है। सिस्टम दुर्घटनाग्रस्त कोड और इसकी याददाश्त को साफ़ करता है लेकिन पूरी तरह से काम करता रहता है।

  • पर्यवेक्षण और पुनरारंभ रणनीतियों को आपके सिस्टम को पूरी तरह कार्यात्मक रखने में मदद करें यदि इसके कुछ हिस्सों को आपके सिस्टम के महत्वपूर्ण हिस्सों को पुनरारंभ करके और उन्हें वापस सेवा में लाकर क्रैश हो जाए। अगर कुछ गलत हो जाता है जैसे कि पुनरारंभ करना बहुत अधिक होता है, तो सिस्टम को मरम्मत से परे टूटा माना जाता है और इस प्रकार बंद हो जाता है।

संबंधित मुद्दे