2012-01-06 13 views
15

मुझे यह नया NGINX+ZeroMQ जिथब पर प्रोजेक्ट दिखाई देता है और अब उलझन में आता है।Mongrel2 बनाम एनजीआईएनएक्स + ज़ीरोएमक्यू?

Mongrel2 और एनजीआईएनएक्स + ज़ीरोएमक्यू के बीच सुविधा और मापनीयता अंतर क्या हैं।

(कारण है कि मैं पूछना है, क्योंकि मैं छाप Mongrel2 केवल nginx के बाद से बनाया गया था ZeroMQ का समर्थन नहीं किया तहत हूं)

उत्तर

32

मैं भी nginx + zeromq मॉड्यूल के बारे में पढ़ सकते हैं और मैं तुरंत एक धब्बेदार काफी अंतर

ज़ीरोएमक्यू nginx मॉड्यूल बैकएंड प्रक्रियाओं के साथ संवाद करने के लिए आरईक्यू/आरईपी सॉकेट का उपयोग करता है। दूसरी ओर mongrel2 दो सॉकेट का उपयोग करता है। एक पुश/पुल संदेश डाउनस्ट्रीम (हैंडलर को) और एक PUB/SUB (हैंडलर से प्रतिक्रिया प्राप्त करने के लिए) भेजने के लिए। यह पूरी तरह से असीमित बनाता है। जब mongrel2 बैकएंड हैंडलर को अनुरोध भेजता है तो यह तुरंत zmq_send() कॉल से लौटाता है और प्रतिक्रिया किसी भी समय बाद में किसी अन्य सॉकेट में प्राप्त की जाएगी।

एक और अंतर यह है कि mongrel2 एक से अधिक क्लाइंट को एक ही प्रतिक्रिया भेजने में सक्षम है। आपका हैंडलर इस तरह से कुछ mongrel2 बता सकता है: "कनेक्शन 4, 5, 6 और 10 कनेक्शन के लिए यह प्रतिक्रिया दें"। Mongrel2 हैंडलरों को संदेश के भीतर कनेक्शन आईडी भेजें।

आशा है कि इससे मदद मिलती है! =)

1

एनजीआईएनएक्स + ज़ीरोएमक्यू में बग हैं। 1. यह ZMQ सर्वर (इसके लिए यह श्रृंखला भेजता है) भेजने के पहले एनजीआईएनएक्स 1.5 कारण एनजीआईएनएक्स के साथ काम नहीं करता है, परीक्षण करता है कि कनेक्शन वैध है या नहीं। और यह असफल हो जाएगा क्योंकि इसमें ज़ेडएमक्यू सॉकेट है और टीसीपी सॉकेट नहीं है क्योंकि प्रोटोकॉल अलग है, यह एक अवैध कनेक्शन कहता है।

  1. ऐसे बहुत कुछ हैं।

  2. यह मॉड्यूल रखरखाव का समर्थन नहीं करता है। न केवल अपस्ट्रीम बल्कि डाउनस्ट्रीम भी काम नहीं करेगा। मैं डाउनस्ट्रीम पर रखरखाव काम करने के साथ संघर्ष कर रहा हूं।

मेरी सिफारिश: रखरखाव के साथ जेडएमक्यू एनजीआईएनएक्स को लागू करने में दो महीने का समय लगेगा।

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