2012-04-04 11 views
7

मेरे पास एक एसएसएल परिवहन का उपयोग कर एक सक्रिय एमक्यू ब्रोकर है। मेरे पास ब्रोकर का उपयोग करने वाले लगभग 10 उपभोक्ता हैं। मैं अपने मार्गों को कॉन्फ़िगर करने के लिए ऊंट का उपयोग कर रहा हूं।ActiveMQ उपभोक्ता हैंग

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

मैंने समस्या को दोहराने की कोशिश में एक समय में अपने उपभोक्ताओं के माध्यम से कदम उठाकर यह अलग करना शुरू कर दिया। अंततः मुझे एक उपभोक्ता के पास पहुंचा कि मैं समस्या को फिर से बना सकता हूं। यह समय के बाद लटका होगा, हालांकि, अगर मैं सक्रिय एमक्यू व्यवस्थापक कंसोल पर जाता हूं और कतार में संदेशों को देखने का प्रयास करता हूं, तो यह फिर से चलना शुरू हो जाएगा। मुझे लगता है कि जेटी वेबपृष्ठ के लिए कतार को रीफ्रेश करने के लिए एक कनेक्शन उत्पन्न कर रहा है, और इस प्रकार मेरे पास कुछ थ्रेड समस्या को अनब्लॉक कर रहा है। मुझे इसे कैसे डिबग करना चाहिए?

धन्यवाद

+0

एक्टिवएमक समस्या की तरह लगता है। यदि आपके पास ऐसी स्थिति है और एक नया ग्राहक शुरू करना है तो उसे संदेश प्राप्त होते हैं? – Julias

+0

नहीं, जरूरी नहीं। मैंने उपभोग को बंद करने से पहले कोशिश की है, फिर वापस चालू करें, और यह संदेश प्राप्त करने के लिए कतार में वापस नहीं जायेगा। – Derek

उत्तर

7

मेरा एक सहयोगी ने ठोकर खाई पर 'अटक' गए संदेशों कम करने की कोशिश, और मुझे बस इंटरनेट पर एक स्पष्टीकरण मिला: http://activemq.2283324.n4.nabble.com/Consumer-is-not-able-to-pick-messages-from-queue-td2531722.html

स्पष्ट रूप से एक पृष्ठ आकार है जो आपके पास चयनकर्ता होने पर भर सकता है और सभी संदेश एक ही कतार में हैं। यह हमारे लिए हो रहा था - मैंने उपभोक्ता शुरू नहीं किया था, इसलिए मैं एक अलग उपभोक्ता के लिए चयनकर्ताओं के साथ संदेशों के एक पूर्ण पृष्ठ के साथ समाप्त हुआ, और इससे मेरा चल रहा उपभोक्ता इसे कोई अतिरिक्त काम नहीं मिला।

0

1 करने के लिए कतार प्रीफ़ेच की स्थापना उपभोक्ताओं में बेहतर वितरण को बढ़ावा देने और कुछ दिलचस्प पर विशिष्ट उपभोक्ताओं

देख http://activemq.apache.org/what-is-the-prefetch-limit-for.html

0

आपके लिए बहुत देर हो चुकी है, लेकिन मुझे एक ही समस्या थी और समस्या यह थी कि मैं कतार में चीजों को लेने के लिए उपयोग कर रहे एक ही कनेक्शन का उपयोग कर कतार में चीजों को जोड़ने की कोशिश कर रहा था।

एक बार जब मैंने उन्हें अलग किया (दो पूरी तरह से अलग संदर्भ, उत्पादन के लिए एक और दूसरा उपभोग करने के लिए), समस्या स्वयं हल हो गई।