मैं मोबाइल एजेंटों का शोध कर रहा हूं, और सोच रहा था कि क्या एरलांग में किसी अन्य नोड को चलने की प्रक्रिया भेजना संभव है। मुझे पता है कि एक संदेश को किसी अन्य नोड पर एक प्रक्रिया भेजना संभव है। मुझे पता है कि क्लस्टर में सभी नोड्स पर एक मॉड्यूल लोड करना संभव है। क्या किसी ऐसी स्थिति को स्थानांतरित करना संभव है जो किसी विशेष नोड पर किसी अन्य नोड पर हो और उसके राज्य को फिर से शुरू कर सके। यही है, क्या erlang मजबूत गतिशीलता प्रदान करता है? या क्या erlang में मजबूत गतिशीलता प्रदान करना संभव है?एरलांग में, क्या एक अलग नोड को चलने की प्रक्रिया भेजना संभव है?
उत्तर
हां, यह संभव है, लेकिन "नोड टू प्रोसेस नोड" कॉल नहीं है। हालांकि, अगर प्रक्रिया माइग्रेशन के लिए एक सुविधा के साथ बनाई गई है, तो आप निश्चित रूप से प्रक्रिया के कार्य को भेजकर और उसके राज्य को दूसरे नोड में भेजकर कर सकते हैं और वहां एक स्पॉन की व्यवस्था कर सकते हैं। प्रक्रिया की पहचान सही करने के लिए, आपको या तो वैश्विक प्रक्रिया रजिस्ट्री या gproc का उपयोग करने की आवश्यकता होगी, क्योंकि प्रक्रिया पिड बदल जाएगी।
अन्य विचार भी हैं: प्रक्रिया एक ईटीएस तालिका का उपयोग कर सकती है जिसका डेटा अन्य नोड पर मौजूद नहीं है, या यह प्रक्रिया शब्दकोश में संग्रहीत सामग्री हो सकती है (यादृच्छिक मॉड्यूल से राज्य दिमाग में आता है)।
एरलांग में आम सहमति यह है कि प्रक्रियाओं को मशीनों के बीच स्थानांतरित करने के लिए एकत्रित नहीं किया जाता है। इसके बजाय, एक या तो नोड्स के बीच अनुप्रयोगों के अधिग्रहण के लिए व्यवस्था करता है। या सिस्टम के वितरण के लिए डेटा पहले से ही किसी अन्य मशीन पर वितरित कर रहे हैं। किसी भी मामले में, त्रुटियों की स्थिति में लगातार राज्य बनाने की मुख्य समस्या अभी भी पकड़, गतिशीलता या नहीं - और वितरण दृढ़ता समस्या को हल करने के लिए एक अच्छा उपकरण है।