वर्तमान में परीक्षण चल रहा है: पूरा होने पर GitHub कोड खोला जाएगा।

L · लीडर सूचना

संरचनाrefresh

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

M से यह किस तरह भिन्न है

M · स्थानांतरितL · लीडर सूचना
प्रकृतिकिसी अनुरोध की प्रतिक्रियासर्वर द्वारा भेजी सूचना (अनुरोध से असंबंधित)
अर्थ"यह अनुरोध यहाँ संसाधित नहीं हो सकता""लीडर बदल गया है" (सूचना)
कनेक्शनबंद करके नए लीडर से पुनः जुड़ेंबनाए रखें — केवल संकेत अद्यतन करें
यह नोडनिश्चित रूप से लीडर नहीं हैयह नोड स्वयं नया लीडर भी हो सकता है

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

यह क्यों ज़रूरी है

इस सूचना के बिना क्लाइंट को लीडर बदलने का पता तभी चलता है जब वह एक अनुरोध भेजकर M से वापस लौटाया जाता हैL उस आवागमन को खत्म कर देती है, जिससे फ़ेलओवर के तुरंत बाद का पहला अनुरोध भी सीधे नए लीडर के पास जाता है।

पहले formal protocol के सभी official client L समझते हैं। Unknown op को अनदेखा करके stream चलाते रहना अनुमत नहीं है।

बाइट अंकन: op एक ASCII वर्ण है, और addr UTF-8 टेक्स्ट है (परिवर्तनशील-लंबाई, संरचना में N के रूप में दिखाया गया)। अनुगामी \n, 0A है।

प्रवाह

क्लाइंट
जुड़ा हुआ नोड
नया लीडर
चुनाव से लीडर बदल गया
L · लीडर सूचना (नए लीडर का पता)
केवल लीडर संकेत अद्यतन — कनेक्शन बना रहता है
अगले अनुरोध से सीधे नए लीडर के पास
A · अधिग्रहित (token)
अनुरोधप्रतिक्रिया

सिंगल सर्वर मोड में लीडर की अवधारणा ही नहीं है, इसलिए वहाँ यह सूचना कभी नहीं भेजी जाती। क्लस्टर के समग्र व्यवहार के लिए प्रोटोकॉल (क्लस्टर) देखें।