Я использую memcache для разработки кэша для слоя модели веб-приложения, одна из моих самых больших проблем - согласованность данных.
Мне пришло в голову кэширование данных примерно так:
(ключ = запрос, значение = список идентификаторов объектов, результат запроса)
для каждого идентификатора списка:
(ключ = object.id, значение = объект)
Итак, каждый раз, когда выполняется запрос:
Если запрос уже существует, я извлекаю объекты, указанные в списке, из кэша.
Если это не так, все объекты списков сохраняются в кэше, заменяя любое другое старое значение.
Кто-то использовал эту альтернативу, это бог? какие-нибудь другие идеи?