Consistent Hashing روشی برای نگاشت کلیدها به گرههای یک سامانه توزیعشده است که تلاش میکند هنگام اضافه یا حذف گره، فقط بخشی از کلیدها جابهجا شوند.
یک سناریوی واقعی
در یک Cache توزیعشده، اضافه کردن سرور جدید با تقسیم ساده بر تعداد سرورها ممکن است محل اکثر کلیدها را عوض کند، اما Hashing سازگار این جابهجایی را کاهش میدهد.
توزیع بار همچنان به تعداد Virtual Nodeها و الگوی کلیدها وابسته است. این روش بهتنهایی مشکلات Replication و خرابی گره را حل نمیکند.
این راهکار را بهصورت پیشفرض به تمام پروژهها تحمیل نکنید. هزینه پیادهسازی، خطاهای محتمل و سازگاری با زیرساخت فعلی را بسنجید.
مثال انتخاب مسیر با هش سازگار
هنگام اضافه شدن نود تازه، الگوریتمهای Consistent Hashing میکوشند فقط بخشی از کلیدها جابهجا شوند. این ویژگی در توزیع کش و شاردینگ مفید است، اما توازن بار و مدیریت نود داغ همچنان نیاز به نظارت دارند.