Вот хорошая статья о кешировании вывода: http://www.4guysfromrolla.com/articles/121306-1.aspx.
Обычно вы, похоже, смотрите на кэширование страниц и фрагментов. То, что вы хотите сделать, это кэшировать страницу, если вы можете, так как это даст вам лучший выигрыш в производительности. Но если у вас есть области на странице, которые должны динамически меняться для каждого пользователя, например: вы говорите «Привет, {имя пользователя}» в верхней части страницы, тогда вам нужно взглянуть на кэширование фрагментов.
Кэширование фрагментов не так эффективно, как кеширование страниц, поскольку выходные данные должны быть соединены вместе из кэшированной информации и динамической информации, но обычно она все же НАМНОГО лучше, чем НИКАКОЕ кэширование!
Это немного искусно, настраивать кеширование в зависимости от того, что делает страница и нагрузка на базу данных, но это может заставить страницу загружаться на много порядков быстрее, чем без кеширования.
К вашему сведению - если запросы базы данных убивают сайт, вы можете также рассмотреть возможность укрощения их и / или кэширования их выходных данных по отдельности, чтобы вам не приходилось нажимать на базу данных для той же информации.
Также следует понимать, что 'varByParam' для кеширования также весьма полезен - скажем, у вас есть страница на 3 языках, вы можете кэшировать страницу для каждого языка с помощью varByParam, если ваш URL-адрес является языковым компонентом, VariveByParam может забрать.
НТН,
Lance