Проверяет понимание распределённых систем, eventual consistency и проблем CAP.
Используют глобальные каналы коммуникации (Kafka/Redis Stream), версионирование ключей, lease-based caching или CRDT. Цель — обеспечить одно и то же состояние кеша во всех датацентрах.
В multi-DC системах есть проблемы:
высокая задержка между ДЦ;
split-brain;
невозможность согласованности в реальном времени (CAP theorem).
Стратегии invalidation:
При обновлении глобальная версия увеличивается, а данные становятся невалидными автоматически.
Kafka topic cache.invalidate
каждый ДЦ подписан и очищает локальные инстансы
Ключ имеет lease owner, который владеет правом обновления.
Если данные коммутативны, можно использовать:
G-Counter
OR-Map
LWW Register
Чаще всего применяется в CDN.
Вывод:
Multi-DC invalidation — это баланс между задержками и согласованностью. Универсального решения нет, важно учитывать SLA.