Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Задачи

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

AI info

Карта сайта

Документы

Медиа

Назад
Вопрос про Redis : cache invalidation, multi dc, distributed systems

Как организовать согласованный сброс кешей между несколькими датацентрами (multi-DC cache invalidation)?

Проверяет понимание распределённых систем, eventual consistency и проблем CAP.

Короткий ответ

Используют глобальные каналы коммуникации (Kafka/Redis Stream), версионирование ключей, lease-based caching или CRDT. Цель — обеспечить одно и то же состояние кеша во всех датацентрах.

Длинный ответ

В multi-DC системах есть проблемы:

  • высокая задержка между ДЦ;

  • split-brain;

  • невозможность согласованности в реальном времени (CAP theorem).

Стратегии invalidation:

1) Versioned keys

При обновлении глобальная версия увеличивается, а данные становятся невалидными автоматически.

2) Pub/Sub широковещательная очистка

  • Kafka topic cache.invalidate

  • каждый ДЦ подписан и очищает локальные инстансы

3) Lease-based invalidation

Ключ имеет lease owner, который владеет правом обновления.

4) CRDT-based caching

Если данные коммутативны, можно использовать:

  • G-Counter

  • OR-Map

  • LWW Register

5) Hybrid (локальный кеш + глобальная синхронизация)

Чаще всего применяется в CDN.

Вывод:

Multi-DC invalidation — это баланс между задержками и согласованностью. Универсального решения нет, важно учитывать SLA.

  • Аватар

    Golang Guru

    Maxim Lukyanov

    Guru – это эксперты YeaHub, которые помогают развивать комьюнити.

Уровень

  • Рейтинг:

    3

  • Сложность:

    9

Навыки

  • Redis

    Redis

Ключевые слова

#cache invalidation

#multi dc

#distributed systems

Подпишись на Golang Developer в телеграм

  • Аватар

    Golang Guru

    Maxim Lukyanov

    Guru – это эксперты YeaHub, которые помогают развивать комьюнити.