2013-10-23 4 views
15

लंबे समय तक हम एमएसएमक और रेडिस कतार (IRedisList) का उपयोग कर रहे थे। महीने पहले युगल हमने रेडिस पब-सब की कोशिश करना शुरू कर दिया था।रेडिस कतार बनाम एमएसएमक्यू

हमारे आवेदन में बीस से अधिक सेवाएं हैं जो कतार से संदेश पढ़ती हैं या रेडिस के साथ चैनलों की सदस्यता लेती हैं। हमारे पास दस से अधिक कतार भी हैं जिन्हें हम उन्हें संदेश भेजते हैं। आवेदन बहु-थ्रेडेड है।

तो मैं आपसे क्या चाहता हूं?

अब हमारे पास यह तय करने के लिए कुछ समय है कि हम किस प्रकार की कतारों का उपयोग करना चाहते हैं और हम एक अलग तरह की कतार के साथ क्या बदलना चाहते हैं।

मैंने एमएसएमक्यू वीएस रेडिस के बारे में पोस्ट देखने की कोशिश की और पर्याप्त जानकारी नहीं मिली।

क्या कोई मुझे इस मुद्दे के बारे में सलाह दे सकता है?

उत्तर

29

आईएमओ, आप यहां सेब और संतरे की तुलना करने की कोशिश कर रहे हैं।

एमएसएमक्यू एक एंटरप्राइज़-क्लास एमओएम (संदेश उन्मुख मिडलवेयर, यानी एक क्यूइंग सिस्टम) है जो निरंतरता, लेनदेन संबंधी समर्थन और सुविधाओं का एक समृद्ध सेट पेश करता है।

रेडिस एक तेज़ मेमोरी डेटा संरचना सर्वर है, जिस पर आप एक क्यूइंग सिस्टम बना सकते हैं। रेडिस के साथ एमएसएमक्यू की मूलभूत सुविधाओं का उचित कार्यान्वयन पहले से ही एक कठिन काम है। उन्नत सुविधाओं को लागू करने के लिए शायद यह संभव नहीं होगा (जैसे वितरण लेनदेन समर्थन)।

मैं गुण आप कतार प्रणाली से उम्मीद की सूची के लिए प्रयास करने का सुझाव देते हैं:

  • आप दृढता की जरूरत है?
  • क्या आपको लेनदेन समर्थन की आवश्यकता है?
  • क्या आपको वितरित लेनदेन समर्थन की आवश्यकता है?
  • क्या आपको "एक बार और केवल एक बार" वितरण अर्थपूर्ण की आवश्यकता है? सबसे बार में? कम से कम एक बार?
  • क्या आपको एकाधिक पुनः प्रयास नीतियों (रैखिक देरी, घातीय बैकऑफ, आदि ...) की आवश्यकता है?
  • क्या आपको अपवाद/मृत कतारों की आवश्यकता है?
  • क्या आपको आइटम प्रतिधारण की आवश्यकता है?
  • क्या आपको कतार ब्राउज़िंग समर्थन की आवश्यकता है? कतार प्रशासन क्षमताओं?
  • क्या आपको आइटम प्राथमिकता प्रबंधन की आवश्यकता है?
  • क्या आपको स्वचालित आइटम की समाप्ति की आवश्यकता है?
  • क्या आपको देरी हुई वस्तुओं की आवश्यकता है?
  • क्या आपको आइटम अनुक्रम की आवश्यकता है? अंतिम मूल्य कतार?
  • क्या आपको प्रकाशन-और-सदस्यता की आवश्यकता है? बहु-कास्टिंग के साथ?
  • क्या आपको एक ही थ्रेड में एक ही समय में कई कतारों से डेक्यू करने की आवश्यकता है?
  • क्या आपको उच्च-उपलब्धता और/या क्लस्टरिंग समर्थन की आवश्यकता है?
  • क्या आपके पास उच्च-थ्रूपुट है? क्या आपको सबसे अच्छा प्रदर्शन चाहिए?

आपकी आवश्यकताओं के आधार पर रेडिस एक अच्छा फिट हो सकता है या नहीं भी हो सकता है। लेकिन रेडिस के साथ एक असली माँ की घंटी और सीटी पाने की उम्मीद न करें।

अंतिम बिंदु: आपने रेडिस पब/उप सुविधा का उल्लेख किया है। कृपया ध्यान दें कि यह तंत्र कतार प्रणाली पर आधारित नहीं है। रेडिस पब/सब के साथ संदेशों की डिलीवरी के बारे में कोई गारंटी नहीं है। यदि कोई ग्राहक नहीं सुनता है, तो इस ग्राहक के लिए आइटम खो जाएगा।

+1

धन्यवाद आदमी। बढ़िया उत्तर – FelProNet

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