একটি কী দিয়ে একাধিক প্রসেস ও একাধিক সার্ভারের ক্রম নিয়ন্ত্রণ করা, হালকা ও দ্রুতগতির ডিস্ট্রিবিউটেড লক সেবা
একাধিক প্রসেস বা সার্ভার যখন একই রিসোর্স (অ্যাকাউন্ট, অর্ডার, ইনভেন্টরি, ব্যাচ জব…) একসাথে স্পর্শ করে, তখন প্রতিযোগিতা (contention) তৈরি হয়। Ticketing এই সমস্যা সমাধান করে TCP-এর উপর একটিমাত্র বাইনারি প্রোটোকল দিয়ে — ক্লায়েন্ট নামযুক্ত কী (key) অর্জন (acquire) করে, ক্রিটিক্যাল সেকশন পার হওয়ার পর রিলিজ (release) করে। এর মধ্যে সার্ভার অপেক্ষমাণদের FIFO ক্রমে সারিবদ্ধ করে, এবং ক্লায়েন্ট মারা গেলেও lease-এর মেয়াদোত্তীর্ণ হওয়া নিরাপত্তা জাল হিসেবে কাজ করে।
⚡
বাইনারি ফ্রেম প্রোটোকল
শুরু থেকেই স্থির-প্রস্থের বাইনারি ফিল্ড দিয়ে ডিজাইন করা, পার্সিং ছাড়াই সরাসরি অফসেট থেকে পড়া যায় — প্রতিটি রিকোয়েস্টের ওভারহেড ন্যূনতম।
🔑
ফেন্সিং টোকেন
প্রতিটি অর্জনে একটি একঘেয়ে (monotonic) বর্ধনশীল টোকেন ইস্যু করা হয়, ফলে লক সার্ভার প্রতি মুহূর্তে সম্পূর্ণ সামঞ্জস্যপূর্ণ না হলেও নিরাপত্তা বজায় থাকে।
🔄
নিরবচ্ছিন্ন ক্লাস্টার
অগ্রাধিকার-ভিত্তিক অ্যাক্টিভ-স্ট্যান্ডবাই ফেইলওভার। ন্যূনতম ২টি সার্ভার দিয়ে পুনরায় চালু বা ব্যর্থতার সময়েও সেবা বিচ্ছিন্ন হয় না।
🌐
৮টি ভাষায় অফিশিয়াল ক্লায়েন্ট
একই বাইট-ভিত্তিক প্রোটোকলের উপর, প্রতিটি ভাষার জন্য স্বাভাবিক ও প্রচলিত API (async অথবা ব্লকিং) সরবরাহ করা হয়।