我们有一个相当标准的电子商务场景,其中包含类别中的产品分页列表.无论好坏,大约80%的访问者从未浏览过第一页,根据类别,可能会有5-10多个结果页面,这些页面的查看次数要少得多.(是的,我们会优化第一页上显示的内容并进行良好的搜索 - 但这是一个不同的讨论)
我们无法缓存每一页的结果,因为我们受到内存的限制,但是缓存每个类别的第一页结果的好处将是巨大的.
我知道我可以使用对象缓存来存储有问题的数据集,但这可能是使用输出缓存,也许是通过使用response.Cache对象?
页面生命周期中的哪个位置可以完成?预渲染?
很简单,URL就像"/ ProductList?Category = something&Page = 1"而且我想要逻辑类似(伪代码):
If paramater "Page" equals 1
Use output caching: vary by param = "categoryName; page"
else
Don't use caching at all, just render the page from scratch.
Run Code Online (Sandbox Code Playgroud)
我们在IIS 6/win2003上使用ASP.NET 2.0.