2011-11-21 10 views
5

मैं एक मैसेजिंग सिस्टम लागू कर रहा हूं जहां एजेंटों नामक बाहरी कार्यक्रम ज़ीरोमक उत्पादकों के माध्यम से संवाद करने में सक्षम हैं। इसलिए, हर बार ब्याज की घटना होती है, एजेंट ज़ीरोमैक को एक संदेश भेजता है।ज़ीरोएमक्यू पाइपलाइन पैटर्न

मुझे पाइपलाइन पैटर्न का उपयोग करके इसे लागू करने में दिलचस्पी है।

मुझे कुछ उदाहरण मिले (वेंटिलेटर-वर्कर-परिणाम प्रबंधक), लेकिन वेंटिलेटर घटक कार्यकर्ता से कनेक्शन स्वीकार करने के लिए एक अंतिम बिंदु बनाता है, और फिर सभी संदेशों को बैच में भेजता है।

मेरा परिदृश्य काफी अलग है। प्रत्येक एजेंट को भेजने के लिए हर बार "एजेंट" कनेक्ट होता है - यह श्रमिकों से कनेक्शन की प्रतीक्षा नहीं करता है, इसलिए मुझे आश्चर्य है कि यह संभव है या नहीं? साथ ही, महत्वपूर्ण तथ्य यह है कि संदेशों को संसाधित करने के क्रम में संसाधित किया जाना चाहिए।

उत्तर

2

आप अपने समाधान को प्राप्त करने के लिए पैटर्न को मिश्रित करते हैं। मुझे लगता है कि यह specialized broker होना चाहिए जो असली आरईक्यू एजेंटों के लिए आरईपी एजेंट कलेक्टर को तत्काल करता है। उन एजेंट कलेक्टर को सिस्टम के साथ संवाद करने से पहले ऑर्डर करने का ख्याल रखना चाहिए।

+0

यह एक अच्छा समाधान हो सकता है, सिवाय इसके कि मुझे यहां द्विपक्षीय संप्रेषण की आवश्यकता नहीं है। एजेंट को यह जानने की आवश्यकता नहीं है कि ब्रोकर को संदेश वितरित किया गया था - इसे सिर्फ इसे भेजना है। – Nedo

+0

मुझे यकीन नहीं है, लेकिन [AFAIK] (http://en.wiktionary.org/wiki/AFAIK), ज़ीरोएमक्यू में यूनिडायर्सियल सॉकेट की कोई धारणा नहीं है। यदि आपके आरईक्यू एजेंटों को ब्रोकर से जुड़े रहने की आवश्यकता है, तो प्रत्येक बार ईवेंट भेजे जाने पर सॉकेट बंद करें। –

1

आरईक्यू-आरईपी तब होता है जब आप एक गोल यात्रा चाहते हैं। लगता है जैसे आप एक पब-सब चाहते हैं। एक प्रसिद्ध बंदरगाह पर एक बाध्य के साथ एक एसयूबी सेट करें, तो ग्राहक उस बंदरगाह से कनेक्ट हो और एक पब जारी करें।

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