2008-12-24 17 views
7

समस्या: डब्ल्यूसीएफ के साथ एक वितरित, स्केलेबल और आपदा प्रतिरोधी पब/उप सेवा प्रदान करने के लिए कैसे करें।डब्ल्यूसीएफ पब/सब ग्राहक कैशिंग

विवरण:

ध्यान दें कि यह दृष्टिकोण इस तरह के TIBCO ईएमएस के रूप में संदेश भेजने/मिडलवेयर समाधान के अलावा विचार किया जा रहा है।

मैं डब्ल्यूसीएफ में देख रहा हूं, विशेष रूप से इसका उपयोग कैसे पब/सब प्रदान करने के लिए किया जा सकता है। इस विषय पर यह आलेख बहुत अच्छा है: WCF pub-sub

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

तो, मुझे लगता है कि समस्या के समाधान के एक जोड़े हैं:

  1. एक वितरित कैश में स्टोर ग्राहक विवरण (सवाल देखें: q1 और q2)।
  2. किसी डेटाबेस/केंद्रीय फ़ाइल सिस्टम में ग्राहक के विवरण स्टोर करें।

क्या कोई अन्य समाधानों के बारे में सोच सकता है (यानी मुझे डब्लूसीएफ की कुछ शानदार जादुई विशेषता नहीं मिली है?) किसी भी टिप्पणी की सराहना की।

उत्तर

3

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

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

0

मुझे लगता है कि डब्ल्यूसीएफ अभी तक नहीं है। आपको जो ब्रोकर चाहिए वह आपके लिए ये सभी विवरण संभालता है ताकि आप अपने व्यापार तर्क को लागू कर सकें। ActiveMQ की तरह कुछ बहुत अच्छे लोग हैं। यदि आपको ऑर्केस्ट्रेशन की आवश्यकता है तो आप शायद बस का उपयोग करना चाहते हैं जो ब्रोकर के शीर्ष पर भी बैठ सकता है। मुझे लगता है कि डब्ल्यूसीएफ अद्भुत है लेकिन इसे किसी ऐसी चीज में बनाने और बनाने के लिए, यह एक अच्छा विचार नहीं है।

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