2017-05-18 17 views
5

के माध्यम से संदेश अग्रेषित करते समय समस्या मुझे सक्रिय एमक्यू के नेटवर्क को जोड़ने के दौरान समस्या का सामना करना पड़ रहा है।सक्रिय एमक्यू नेटवर्क

एस 1:

मैं दो स्थितियों है मेरा आवेदन पहली बार एक ActiveMQ 'ए' से जुड़ा है। और यह सक्रिय एमक्यू "ए" एक ActiveMQ "बी" से जुड़ा हुआ है - यह वह परिदृश्य है जो मुझे कुछ मुद्दों का कारण बनता है। एस 2: मेरा एप्लिकेशन सीधे ActiveMQ "बी" से जुड़ा हुआ है।

दोनों मामले में हम एक ही कतार में डेटा भेज रहे हैं और निश्चित रूप से हम एक ही डेटा भेजते हैं। क्या अपेक्षित है: जब ActiveMQ "बी" डेटा प्राप्त करता है तो उसे उसी कतार पर प्रतिक्रिया देना चाहिए।

परिदृश्य एस 1 में, डेटा 'ए' ActiveMQ करने के लिए अपने आवेदन के द्वारा भेज सकते हैं और उसके बाद ActiveMQ 'बी' लेकिन इस ActiveMQ 'बी' को भेजा जाता है प्रतिक्रिया करने लगता नहीं है, तथ्य यह है ActiveMQ है 'ए' करता है ActiveMQ "बी" से डेटा प्राप्त नहीं करें। यह मेरी मुख्य समस्या है और मैं यह नहीं समझ सकता कि यह क्यों काम नहीं कर रहा है क्योंकि यदि मैं अपने आवेदन को सीधे ActiveMQ "बी" पर जोड़ता हूं तो मुझे डेटा प्राप्त होता है।

मैंने वहां एक सरल स्कीमा बनाने की कोशिश की है जो एस 1 और एस 2 की व्याख्या करता है।

क्या किसी को भी इस तरह की समस्या का सामना करना पड़ा है? समस्या का कारण खोजने के लिए मुझे कहां देखना चाहिए?

enter image description here

संपादित करें: कुछ अधिक जानकारी के:

ActiveMQ में 'ए' मैं वहाँ उपभोक्ता हैं देख सकते हैं लेकिन ActiveMQ 'बी' में (स्तंभ "उपभोक्ता की संख्या" 5 के बराबर है) वहाँ कोई उपभोक्ता नहीं है (कॉलम "उपभोक्ता की संख्या" 0 है) जबकि यह सक्रिय एमक्यू "ए" में 5 होना चाहिए। कोई विचार ?

+0

क्या आप अपने परिदृश्य एस 1 में विस्तृत कर सकते हैं, वास्तव में ActiveMQ बी क्या करना चाहिए? क्या कोई और उपभोक्ता बी सर्वर मतदान कर रहा है और प्रतिक्रिया दे रहा है? – Adonis

+0

मैंने व्यक्तिगत रूप से एक समान स्थिति का अनुभव किया लेकिन आपका मामला अलग हो सकता है। यदि आप प्रत्येक उपभोक्ता के लिए अलग कतार का उपयोग कर रहे हैं, तो टूटा हुआ संचार अवरुद्ध कतार के कारण हो सकता है जिसमें एक विशिष्ट उपभोक्ता के लिए लंबित संदेश हैं। कतार की जांच करें और सफाई की कोशिश करें। – YuVi

उत्तर

0

ActiveMQ "ए" और ActiveMQ "बी" दोनों तरीकों से सरल प्रमाणीकरण प्लगइन का उपयोग नहीं कर सकता है। मेरी समस्या तब जवाब दे रही थी जब ActiveMQ "B" ने सक्रिय एमक्यू "ए" से कनेक्ट करने का प्रयास किया लेकिन प्रमाणीकरण करने में असफल रहा ... यह इतना आसान है! तथ्य यह है कि मैं ActiveMQ "बी" पर controle नहीं था। तो समाधान ActiveMQ "ए" से उपयोगकर्ता/pwd को स्वीकार करने के लिए ActiveMQ "ए" को कॉन्फ़िगर करना था।

1

शायद networkTTL config के साथ संबंधित है। (http://activemq.apache.org/networks-of-brokers.html)

डिफ़ॉल्ट config में, संदेश नेटवर्क में केवल एक कदम जा सकते हैं। यदि यह ए से बी तक जाता है, तो यह ए

+0

मैंने अपने कनेक्टर को नेटवर्क टीटीएल = "3" जोड़ा लेकिन मुद्दा वही रहता है। मैं अपनी समस्या के बारे में कुछ जोड़ना चाहता हूं: सक्रिय एमक्यू "ए" में मैं देख सकता हूं कि उपभोक्ता हैं (कॉलम "उपभोक्ता की संख्या" 5 के बराबर है) हालांकि सक्रिय एमक्यू "बी" में कोई उपभोक्ता नहीं है (कॉलम "उपभोक्ता की संख्या "0 है) जबकि यह सक्रिय एमक्यू" ए "में 5 होना चाहिए। कोई विचार ? – Ashbay

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