На самом деле на этот вопрос есть два ответа:
Во-первых, как отметил Уилл Бикфорд, вам следует избегать преждевременной оптимизации.Вам нужно иметь работающее приложение, чтобы определить места, которые могут выиграть от повышения производительности.Только после этого вы можете попытаться применить кеширование.
Во-вторых, проектирование вашего приложения для будущей загрузки.Это означает, что перед тем, как приступить к написанию кода, вы должны попытаться ответить на этот вопрос: «Как изменится мой дизайн, если приложение должно справляться с нагрузкой, скажем, в 10 000 раз больше, чем сейчас планируется?»Это обычно приводит к более продвинутой (как в сквозной) структуре, которая предусматривает масштабирование до нескольких серверов, и вместе с этим возникает необходимость в распределении состояния между серверами, а следовательно, и в распределенном кэшировании.Если вы не ответите на этот вопрос, есть большая вероятность, что вам придется рано или поздно переписать ваше приложение.
Другими словами, проектируйте будущее, внедряйте сегодня.
Надеюсь, это поможет.
Слава Имешев