3 回答
TA贡献1943条经验 获得超7个赞
AFAIK,主要区别在于会话是每个用户,而缓存将用于应用程序范围的项目。
如在其他答案中所述,您可以将每个用户的信息存储在缓存中,只要您提供密钥(通过会话或cookie)即可。然后,您将有更多控制权来使缓存中的项目过期,并对其设置依赖关系。因此,如果所讨论的DataTable会定期更改,则缓存可能是一个适当的选择。否则,如果是静态会话,则可能更合适。史蒂文·史密斯(Steven Smith)有一个关于dnrtv缓存的出色视频,值得一看。
这实际上取决于您要实现的目标,获得的时间。关于在应用程序中存储状态的方式,还有其他一些可供考虑的选择。根据表的大小,您可以考虑将状态存储在cookie中(如果是敏感信息,则将其加密)。或者,如果它是应用程序范围的数据,则在页面或类上冷使用静态字段。也有Application对象。
更新:我认为您必须问自己的关键问题是谁应该看到此数据。
Are they going to access the data frequently?
(不,不要打扰)。
Is it going to change?
(否,请使用静态字段或应用程序)。
Is it acceptable for user a and user b to see the same results?
(不,将缓存与包含用户名和搜索词的键一起使用。)。
(是的,请使用搜索词的键来使用缓存)。
不过,老实说,如果您的开发进度不理想,我会考虑将缓存/状态问题推迟到以后的日期-您甚至可能不需要它。
性能调整的前三个规则是:1.测量,2.测量更多。3.再次测量...
- 3 回答
- 0 关注
- 401 浏览
添加回答
举报