Varnish ESI多个片段,单个请求?

时间:2011-09-02 08:07:28

标签: varnish edge-side-includes

我的任务是改善wordpress多站点相当大部署的页面服务时间。

我正在考虑使用varnish进行内容的整页缓存,并使用它的ESI功能来包含与用户的登录状态相关联的动态内容,还使用清除清除列表来清除应用程序中的缓存失效博客ID的自定义标头或包含文章ID和/或用户ID的其他自定义标头。

我想知道是否有人想过通过ESI包含多个页面片段的方法,同时将它们分组到后端的单个响应中(例如,我们必须在菜单中显示用户的名称和自定义用户窗口小部件侧边栏,页面的其余部分是静态的,并由varnish缓存.ESI要求我向后端发出两个请求以检索两个片段并将它们放在适当的位置,而在后端我可以轻松生成HTML代码两次运行并将其返回到清漆进行处理)

1 个答案:

答案 0 :(得分:0)

让ESI在一个请求中返回HTML块并包含在一些Javascript逻辑中,然后触发将各种HTML字符串放在适当的位置?有点奇怪,但解决了你的问题,并且应该很难实现。

移动部件较少的另一个选项是将您通过ESI获得的所有HTML块包括在页面中的单个点(比如底部),然后使用CSS将它们绝对定位到您想要的位置页面。