System Design. Подготовка к сложному интервью - Глава 5 - Консистентное хэширование
Консистентное хеширование является краеугольной технологией для распределенных систем. Многие разработчики программного обеспечения этого не осознают, но консистентное хеширование необходимо во многих местах: балансировщики нагрузки, кэши, CDN, генераторы id, базы данных, чаты/социальные сети и многие другие системы.
Эта тема состоит из:
- Проблема с перехешированием и почему нам нужно, чтобы хеширование было ПОСЛЕДОВАТЕЛЬНЫМ
- Хэш-пространство и хэш-кольцо
- БАЗОВЫЙ подход (введенный Каргером и др. в MIT)
- Расширенный подход с ВИРТУАЛЬНЫМИ УЗЛАМИ
Эти моменты раскрыты в очень интересной главе 5 книги:
“System Design. Подготовка к сложному интервью” Алекса Сюй. Оригинал: “System Design Interview – An insider’s guide” by Alex Xu
ОЧЕНЬ РЕКОМЕНДУЮ!
И делюсь своей ментальной картой со всеми подробностями, как обычно:
Смотрите также:
- System Design. Подготовка к сложному интервью - Глава 2 - Приблизительные оценки
- System Design. Подготовка к сложному интервью - Глава 1 - Масштабирование от нуля до миллионов пользователей
- System Design. Подготовка к сложному интервью - Глава 6 - Проектирование хранилища типа Ключ-Значение
- System Design. Подготовка к сложному интервью - Глава 3 - Общие принципы прохождения интервью по проектированию ИТ-систем
- System Design. Подготовка к сложному интервью - Глава 8 - Проектирование системы для сокращения URL адресов