Мне поручено улучшить время обслуживания страницы для довольно большого развертывания многосайта WordPress.
Я рассматриваю возможность использования varnish для полностраничного кэширования контента и использования его возможностей ESI для включения динамического контента, связанного с состоянием входа пользователя в систему, а также обработки аннулирования кеша в приложении с помощью списка очистки varnish, который соответствует настраиваемому заголовку идентификатор блога или некоторые другие настраиваемые заголовки, содержащие идентификаторы статей и / или идентификаторы пользователей.
Я хотел бы знать, придумал ли кто-нибудь способ включения нескольких фрагментов страницы через ESI, сгруппировав их в один ответ от бэкэнда (например, мы должны отображать имя пользователя в меню и пользовательский виджет на боковой панели, остальная часть страницы статична и кэшируется лаком. ESI требует, чтобы я сделал два запроса к бэкэнду, чтобы получить два фрагмента и разместить их в нужном месте, в то время как на бэкэнде я мог легко сгенерировать HTML-код для обоих в разовый прогон и вернуть в лак для обработки)
Вам может быть интересно это - http://cd34.com/blog/infrastructure/finally-a-formal-release-for-my-wordpress-varnish-esi-plugin/