Некоторые мои мысли:
Вы можете сохранять страницы сообщений в кэше в течение определенного периода времени, например, одного часа или 15 минут. Это время зависит от количества посетителей на странице, частоты смены информации и ваших личных предпочтений. Потому что на самом деле не имеет значения, является ли количество постов пользователя немного устаревшим. По истечении этого периода удалите кэшированную версию (также экономит ресурсы), и если страница будет посещена снова, она будет повторно кэширована с обновленными данными.
Умным (пере) использованием ob_start()
вы можете буферизовать несколько частей страницы, таких как часть публикации и часть комментариев. Храните эти части отдельно, и вам нужно всего лишь восстановить одну часть вместо полной страницы. В большинстве случаев почтовая часть меняется не очень часто.
Отслеживайте страницы, на которых определенный пользователь оставлял комментарии (или саму страницу, если он ее создал). После изменения данных пользователя (добавление нового сообщения / комментария) сделайте эти страницы устаревшими (то есть удалите кэшированную версию). Если за небольшой промежуток времени у вас появилось много изменений, вы можете использовать какой-либо фоновый процесс для повторного кэширования страниц и поддержания отзывчивости вашего веб-сервера.
Вставка токенов (уникальных фрагментов текста, таких как% user: 123, postcount%) часто меняющихся деталей - еще одна возможность. Затем сохраните эту версию в своем кеше и по запросу страницы вы можете заменить токены на их данные. Это также может быть объединено с другими методами кэширования, если количество просмотров страниц за период времени очень велико (или, по крайней мере, намного выше, чем частота изменений деталей).