我正在考虑为 asp.net mvc 页面实现缓存机制,为您提供最新版本的网页,但如果页面自上次缓存以来没有更改,它将返回缓存结果。
顺便说一句,我想知道 OutputCacheAttribute 缓存的限制是什么 - 可以使用许多位置 - 客户端、服务器端、下行流、任何(默认)等等。我想知道哪个是最快的选择,因为我不知道客户端的限制是什么——如果它可以存储所有缓存的数据,我认为它肯定是最好的缓存位置。那么每个位置可以存储哪些数据呢?
我想到的一个好主意是将某个地址的最后查看的页面版本保存为 cookie 中的哈希值,因此当用户请求页面时,如果其哈希值没有改变,我可能会给他缓存的结果。但是如果我计算当前页面哈希,它可能会节省流量,但它仍然会消耗服务器处理请求的时间,所以我仍然不确定实现它的最佳方法是什么以及如何产生最佳结果。
尽可能复杂地实现这一点的见解和想法都很棒。