में फंस गए हैं हमने NServiceBus सेवाओं के एक सेट के लिए एमएसएमक्यू क्लस्टर किया है, और जब तक यह नहीं चलता तब तक सब कुछ बढ़िया हो जाता है। एक सर्वर पर आउटगोइंग कतार भरना शुरू हो जाता है, और बहुत जल्द पूरी प्रणाली लटका दी जाती है।क्लस्टर किए गए एमएसएमक्यू उदाहरण के लिए बंधे एमएसएमक्यू संदेश आउटगोइंग कतार
अधिक विवरण:
हम सर्वर N1 और N2 के बीच एक संकुल MSMQ की है। अन्य क्लस्टर संसाधन केवल उन्हीं सेवाएं हैं जो क्लस्टर कतारों पर स्थानीय रूप से संचालित होते हैं, यानी NServiceBus वितरक।
सभी कार्यकर्ता प्रक्रियाएं अलग-अलग सर्वर, Services3 और Services4 पर लाइव होती हैं।
NServiceBus से अपरिचित लोगों के लिए, काम वितरक द्वारा प्रबंधित क्लस्टर वर्क कतार में जाता है। सर्विस 3 और सर्विसेज 4 पर वर्कर ऐप्स एक ही वितरक द्वारा प्रबंधित क्लस्टर कंट्रोल कतार में "मैं काम के लिए तैयार हूं" संदेश भेजता हूं, और वितरक कार्यकर्ता प्रक्रिया की इनपुट कतार में काम की इकाई भेजकर प्रतिक्रिया देता है।
किसी बिंदु पर, यह प्रक्रिया पूरी तरह से लटका जा सकती है।
अगर मैं दूसरे नोड के लिए क्लस्टर से अधिक असफल है, यह पूरी प्रणाली की तरह है पैंट में एक लात हो जाता है: यहाँ क्लस्टर MSMQ उदाहरण पर बाहर जाने वाले कतारों की एक तस्वीर है जब सिस्टम लटका दिया जाता है है । यहाँ शीघ्र ही एक विफलता के बाद एक ही संकुल MSMQ उदाहरण की एक तस्वीर है:
किसी को भी इस व्यवहार की व्याख्या कर सकते है, और क्या मैं इसे से बचने के लिए कर सकते हैं, सुचारू रूप से चलाने प्रणाली रखने के लिए?
माध्यमिक नोड अंततः लटका है? श्रमिक कैसे काम कर रहे हैं? क्या वे सक्रिय रूप से संदेश संसाधित कर रहे हैं? –
यह अक्सर पर्याप्त नहीं होता है कि मैं अधिकृत रूप से कह सकता हूं कि यह केवल एक नोड या दोनों पर होता है। मजदूर व्यवहार कर रहे हैं - प्रक्रियाओं के लिए स्थानीय इनपुट कतार में संदेश होने पर वे सक्रिय रूप से संदेश संसाधित कर रहे हैं। –
अजीब। यह कितनी बार होता है? प्रत्येक नोड में कितने एनआईसी कार्ड हैं? मैं सोच रहा हूं कि एमएसएमक्यू किस कार्ड का उपयोग करने के लिए भ्रमित हो रहा है और इसलिए कभी-कभी एसीके को पूरा नहीं कर रहा है। इसे लॉक करने के लिए एक रजिस्ट्री सेटिंग होनी चाहिए। –