Ticketing
دستاویزات

L · لیڈر اطلاع

ساختrefresh

یہ کسی درخواست کا جواب نہیں بلکہ سرور کی جانب سے خود بھیجی گئی اطلاع ہے (صرف کلسٹر میں)۔ جب Raft قائد کے بدلنے کا پتہ چلتا ہے، تو اس نوڈ سے جڑے تمام کلائنٹس کو نئے قائد کا کلائنٹ پتہ ایک بار بھیجا جاتا ہے۔

M سے کیا فرق ہے

M · منتقل شدہL · لیڈر اطلاع
نوعیتدرخواست کا جوابسرور کی بھیجی ہوئی اطلاع (درخواست سے غیر متعلق)
مطلب"یہ درخواست یہاں پوری نہیں ہو سکتی""قائد بدل گیا ہے" (معلومات)
کنکشنبند کر کے نئے قائد سے دوبارہ جڑیںکھلا رہتا ہے — صرف اشارہ تازہ ہوتا ہے
یہ نوڈیقیناً قائد نہیں ہےہو سکتا ہے یہی نوڈ نیا قائد ہو

L ملنے پر کنکشن بند نہیں کرنا چاہیے۔ اکثر وہی نوڈ جو اطلاع بھیجتا ہے خود نیا قائد ہوتا ہے، اور اس کنکشن پر ابھی درخواستیں باقی بھی ہوتی ہیں۔

یہ کیوں ضروری ہے

اس اطلاع کے بغیر کلائنٹ کو قائد بدلنے کا علم تب ہوتا ہے جب وہ ایک درخواست بھیج کر M سے واپس ٹکرائے۔ L اس چکر کو ختم کر دیتی ہے، تاکہ failover کے فوراً بعد پہلی ہی درخواست سیدھی نئے قائد کو جائے۔

جو پرانے کلائنٹس اس op کو نہیں جانتے، ان کے نظر انداز کرنے سے کام میں کوئی خرابی نہیں آتی — صرف کارکردگی اطلاع سے پہلے والی سطح (درخواست ← M ← دوبارہ کوشش) پر آ جاتی ہے۔

بائٹ نوٹیشن: op ایک ASCII حرف ہے، اور addr UTF-8 متن ہے (متغیر لمبائی، ڈھانچے میں N کے طور پر)۔ آخری \n 0A ہے۔

بہاؤ

کلائنٹ
جڑا ہوا نوڈ
نیا قائد
انتخاب سے قائد بدل گیا
L · لیڈر اطلاع (نئے قائد کا پتہ)
صرف قائد کا اشارہ تازہ — کنکشن کھلا رہتا ہے
اگلی درخواست سے ہی سیدھا نئے قائد کو
A · حاصل شدہ (token)
درخواستجواب

سنگل سرور موڈ میں قائد کا تصور ہی نہیں، اس لیے یہ اطلاع نہیں بھیجی جاتی۔ کلسٹر کے مجموعی رویے کے لیے دیکھیں پروٹوکول (کلسٹر)۔