Основная проблема с кэшированием в обычной среде - истечение срока хранения и устаревшие данные.
Если вы аннулируете свой кэш каждый раз, когда изменяются данные, вы можете оказаться в редких случаях или никогда не попадать в кеш.
Если вы попытаетесь сделать недействительной только часть измененного кэша, у вас будет дополнительное время для определения того, что делать недействительным.
Если вы не аннулируете кэш или у вас есть таймеры, вы можете получить устаревшие данные.
В зависимости от вашей среды и ваших требований вам нужно выбрать, какое решение лучше всего соответствует вашим потребностям. Иногда нормально иметь некоторые устаревшие данные, а в других приложениях это не так.