> Что такое Redis Cluster (JavaScript)

Уровень: junior · Роль: backend · Язык: JavaScript · Категория: Технические вопросы

Компании: ЭНИРАН

Стек: Node.js, Redis, JavaScript

> Пример ответа

Redis Cluster - это распределённая реализация Redis, которая автоматически шардирует данные между несколькими узлами (нодами). В отличие от обычного Redis (одна нода), Cluster позволяет хранить объём данных, превышающий память одной машины, и обеспечивает высокую доступность за счёт репликации.

Ключевые особенности:

  • Шардинг: данные разбиваются на 16384 хэш-слота, каждый узел отвечает за часть слотов. Клиент (например, ioredis в Node.js) автоматически перенаправляет запросы к нужному узлу.

  • Репликация: каждый мастер-узел может иметь несколько реплик (слейвов). При отказе мастера реплика становится новым мастером.

  • Отказоустойчивость: Cluster использует gossip-протокол для обнаружения сбоев и автоматического переключения.

Пример использования в Node.js с библиотекой ioredis:

JAVASCRIPT
const Redis = require('ioredis');
const cluster = new Redis.Cluster([
{ host: '127.0.0.1', port: 7000 },
{ host: '127.0.0.1', port: 7001 },
{ host: '127.0.0.1', port: 7002 }
]);
// Работает как обычный Redis клиент
await cluster.set('key', 'value');
const result = await cluster.get('key');

> ГОТОВЫ К СЛЕДУЮЩЕМУ СОБЕСЕДОВАНИЮ?

Запустите тренировочную сессию с ИИ и получите детальную обратную связь, чтобы увереннее проходить реальные интервью