বর্তমানে পরীক্ষা চলছে: সম্পূর্ণ হলে GitHub কোড উন্মুক্ত করা হবে।

T · টাইমআউট

গঠনrefresh

অর্জন অনুরোধ (A) wait-এর মধ্যে লক পায়নি এমন ক্ষেত্রে পাঠানো হয় — সার্ভার প্রদান না করেই থেমে গেছে (এটি কোনো ত্রুটি নয়)।

বাইট নোটেশন: op একটি ASCII অক্ষর, owner বাইনারি (u64, বিগ-এন্ডিয়ান), আর key UTF-8 টেক্সট (পরিবর্তনশীল-দৈর্ঘ্যের, স্ট্রাকচারে N হিসেবে দেখানো)। শেষের \n হলো 0A। ফিক্সড হেডার বাইনারি মান বলে এতে 0x0A থাকতে পারে, তাই নিউলাইন খোঁজার আগে বাইট-সংখ্যা অনুযায়ী আগে গ্রাস করতে হবে।

owner হলো অনুরোধে পাঠানো মানটিই হুবহু ফেরত দেওয়া সম্পর্ক-নির্দেশক — ক্লায়েন্ট এই মান দিয়ে কোন অনুরোধের সাড়া তা নির্দিষ্ট করে (সাড়া মেলানোর নিয়ম)।

প্রবাহ

ক্লায়েন্ট
সার্ভার
A · অর্জন (key · wait · lease · owner)
দখলে আছে → সারিতে নিবন্ধিত
wait সেকেন্ডের মধ্যে পালা আসেনি
T · টাইমআউট
সারি থেকে সরানো — পুনরায় চেষ্টা করতে নতুন A অনুরোধ পাঠান
অনুরোধপ্রতিক্রিয়া

T আসার মুহূর্তেই সেই অনুরোধ সারি থেকে ইতিমধ্যে সরিয়ে ফেলা হয়েছে, তাই পরে দেরিতে লক প্রদান হওয়ার কোনো সুযোগ নেই। কোনো টোকেনও ইস্যু হয়নি, তাই পরিষ্কার করার কিছু নেই — সরাসরি আবার চেষ্টা করলেই হয়।