我开始掌握PHP缓存,我得到了一个想法-缓存整个页面,以提高后续访问的性能等。
我不明白的是,如果页面上有一个可折叠的固定菜单,你会怎么做。因此,一个网站有一个固定的顶部菜单,可以折叠,并通过cookie记住其状态。如果页面被缓存,那么它无疑会忽略折叠的顶部菜单的实际状态。
也许,最上面的菜单应该去掉,但我猜它可能会以某种方式出现。PHP在加载时决定顶部菜单的状态(检测cookie),JS也可以更改顶部菜单(和cookie)的状态。
此外,该站点是响应性的,用户代理检测决定向哪些设备提供jQuery功能(其他设备获得基本的后备)。
显然,我不能只缓存整个页面。
我正在使用Symfony2,如果这有什么区别的话。
发布于 2013-05-05 21:34:34
当涉及到缓存时,您有许多选择,所有这些选项都有其优缺点:
关于你的响应式站点:也许用javascript实现回退和其他东西是可行的。通过这种方式,客户端将完成所有工作,而您的服务器可以为一个更静态的页面提供服务,该页面可以缓存得非常好。
您必须记住,动态页面和缓存是相互排斥的。如果您根据cookie属性、用户代理或ip地址等提供不同的内容,您将遇到缓存问题。您的页面越静态(如果您提供静态页面并通过javascript添加所有动态,则从you服务器的角度来看,该页面是静态的),缓存将工作得越好。这是一种权衡,您很可能不会得到所有内容(高缓存命中率和高度动态的页面)。
https://stackoverflow.com/questions/16367750
复制相似问题