2012-09-06 22 views
23

RabbitMQ के शीर्ष पर सीधे निर्माण की तुलना में MassTransit की चोटी पर निर्माण के क्या लाभ है?MassTransit RabbitMQ में क्या जोड़ता है?

मेरा मानना ​​है कि मासट्रांसिट द्वारा प्रदान किया गया एक लाभ 'टाइप' एक्सचेंज है (इंटरफ़ेस/प्रकार द्वारा सब्सक्राइब प्रकाशित करें) ताकि संदेश की सामग्री को सादे रब्बीएमक्यू एक्सचेंजों की तुलना में संरचित किया जा सके, जहां संदेश की सामग्री असंगठित पाठ/ब्लॉब है।

क्या अन्य MassTransit द्वारा प्रदान की लाभ?

उत्तर

31

चीज़ें है कि मीट्रिक टन RabbitMQ बस का उपयोग कर के शीर्ष पर कहते हैं:

  • थ्रेड, समवर्ती उपभोक्ताओं
  • संदेश क्रमबद्धता, इंटरफेस सहित, और
  • स्वत: आदान-प्रदान बाइंडिंग वर्ज़निंग, सम्मेलनों
  • गाथा प्रकाशित करते हैं, NHibernate के माध्यम से लगातार राज्य सहित
  • अपनी सेवाओं के लिए
  • प्रदर्शन काउंटरों
  • संदेश हेडर
  • दोष

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

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

कुछ ऐसे हैं, आप http://masstransit-project.com/MassTransit/understand/additions-to-transport.html पर अधिक दस्तावेज देख सकते हैं, या हाल ही में .NET Rocks! podcast को कुछ संबंधित सामग्री के लिए सुन सकते हैं।

+3

अमूर्त भी अच्छा है। हम किसी भी महत्वपूर्ण कोड परिवर्तन के बिना ग्राहक परिसर में तैनाती करते समय क्लाउड और RabbitMQ में Azure सेवा बसों का उपयोग करते हैं। –