पुराने संस्करण (पूर्व 0.9) दुकान ऑफसेट ZK में केवल, जबकि एक आंतरिक काफ्का विषय में काफ्का के नए संस्करण, डिफ़ॉल्ट स्टोर ऑफसेट द्वारा बुलाया __consumer_offsets
(नया संस्करण अभी भी ZK के लिए प्रतिबद्ध सकता है)।
दलाल को ऑफसेट करने का लाभ यह है कि उपभोक्ता जेडके पर निर्भर नहीं है और इस प्रकार ग्राहकों को केवल ब्रोकरों से बात करने की आवश्यकता है जो समग्र वास्तुकला को सरल बनाता है। इसके अलावा, बहुत से उपभोक्ताओं के साथ बड़ी तैनाती के लिए, जेडके एक बाधा बन सकता है जबकि काफ्का आसानी से इस भार को संभाल सकता है (ऑफसेट्स एक विषय और कफ्का स्केल को लिखने जैसा ही है - वास्तव में, डिफ़ॉल्ट रूप से __consumer_offsets
है 50 विभाजन आईआईआरसी के साथ बनाया गया)।
मैं नोडजेएस या काफ्का-नोड से परिचित नहीं हूं - यह क्लाइंट कार्यान्वयन पर निर्भर करता है कि ऑफसेट कैसे किए जाते हैं।
लंबी कहानी लघु: यदि आप ब्रोकर 0.10.1.0
का उपयोग करते हैं तो आप __consumer_offsets
पर ऑफ़सेट कर सकते हैं। लेकिन यह आपके क्लाइंट पर निर्भर करता है, अगर यह इस प्रोटोकॉल को लागू करता है।
अधिक जानकारी में, यह आपके ब्रोकर और क्लाइंट संस्करण (और आप कौन सा उपभोक्ता एपीआई उपयोग कर रहे हैं) पर निर्भर करता है, क्योंकि पुराने ग्राहक नए ब्रोकर से बात कर सकते हैं। सबसे पहले, आपको ब्रैकर और क्लाइंट संस्करण 0.9
या काफ्का विषयों में ऑफसेट लिखने में सक्षम होने के लिए बड़ा होना चाहिए। लेकिन यदि कोई पुराना ग्राहक 0.9
ब्रोकर से कनेक्ट हो रहा है, तो यह अभी भी जेडके को ऑफसेट करेगा।
जावा उपभोक्ताओं के लिए:
यह निर्भर करता है कि क्या उपभोक्ता उपयोग कर रहे हैं: 0.9 से पहले देखते हैं दो "पुराने उपभोक्ता" अर्थात् "उच्च स्तर उपभोक्ता" और "कम स्तर उपभोक्ता"। दोनों, सीधे जेडके को ऑफ़सेट करें। चूंकि 0.9
, दोनों उपभोक्ताओं को "उपभोक्ता" नामक एकल उपभोक्ता में विलय कर दिया गया है (यह मूल रूप से पुराने उपभोक्ताओं दोनों के निम्न स्तर और उच्च स्तरीय एपीआई को एकीकृत करता है - इसका मतलब है, 0.9
में तीन प्रकार के उपभोक्ता हैं)। नया उपभोक्ता दलालों (यानी, आंतरिक काफ्का विषय)
अपग्रेडिंग को आसान बनाने के लिए, पुराने उपभोक्ता (के रूप में) का उपयोग करके ऑफसेट को "डबल प्रतिबद्ध" करने की संभावना भी है। यदि आप इसे dual.commit.enabled
के माध्यम से सक्षम करते हैं, तो ऑफसेट ZK और __consumer_offsets
विषय के लिए प्रतिबद्ध हैं। यह आपको पुराने उपभोक्ता एपीआई से नए उपभोक्ता एपीआई में स्विच करने की अनुमति देता है जबकि आपको जेडके से ऑफसेट्स को __consumer_offsets
विषय पर ले जाया जाता है।
स्रोत
2016-12-14 19:40:28
Thx, मैं नवीनतम एपीआई में अपग्रेड करना सुनिश्चित कर दूंगा। –