अधिकांश रैबिटएमक्यू दस्तावेज राउंड-रॉबिन पर केंद्रित प्रतीत होते हैं, यानी जहां एक ही उपभोक्ता द्वारा एक संदेश का उपभोग किया जाता है। मेरे पास एक आवश्यकता है जिसमें एक ही कतार से एकाधिक सब्सक्राइब किए गए उपभोक्ताओं को एक ही संदेश प्राप्त करना है।

नीचे मेरा नमूना उपभोक्ता कोड है। यहां 2 श्रोता एक ही कतार को सुन रहे हैं, लेकिन संदेश केवल एक उपभोक्ता को प्राप्त हो रहा है। मैं इसे कैसे कॉन्फ़िगर कर सकता हूं ताकि एक ही संदेश दोनों उपभोक्ताओं को दिया जा सके? (उपभोक्ता 1 और उपभोक्ता 2)। किसी भी तरह की सहायता की हम सराहना करेंगे।

@Component
public class Consumer1 {
    @RabbitListener(queues="test.queue.jsa")
    public void recievedMessage(Employee msg) {
          System.out.println("Recieved Message: " + msg);
    }
}

@Component
public class Consumer2 {
    @RabbitListener(queues="test.queue.jsa")
    public void recievedMessage(Employee msg) {
          System.out.println("Consumed Message: " + msg);
    }
}
3
Karthik.Vushakola 14 नवम्बर 2018, 13:03

1 उत्तर

सबसे बढ़िया उत्तर

यह नहीं हो सकता; यह बस उस तरह से काम नहीं करता है। प्रत्येक उपभोक्ता को अपनी कतार की आवश्यकता होती है; फैनआउट एक्सचेंज का उपयोग करें।

6
Gary Russell 14 नवम्बर 2018, 14:04