我想知道ASP.NET MVC中的分布式应用程序,如果我必须存储全局 几乎没有变化的信息,首选的服务器端状态管理选项 - 应用程序状态,会话状态,数据库支持,配置文件属性?我认为它的会话状态和数据库支持。
答案 0 :(得分:2)
这是来自MS MVC4考试转储的问题,有多种选择答案:)我目前正在研究相同的问题......所涉及的关键词是"全球"和"分发" - 据我所知:
a)申请 - 仅限全球"在当前的应用程序线程中,并且不会同步到Web场的其余部分,即不是"分发"
b)会话 - 无效:仅限于用户=不是"全球"
c)数据库 - 有效答案
d)个人资料 - 无效:持久,但仅限于用户=不是"全球"
这就是微软考试问题的问题,这一切都取决于你如何阅读问题 - 技术上应用程序状态也是一个正确的答案,因为数据将是应用程序的全局,并且问题没有提到数据应该通过森林保存。
如果我明天在考试中提出这个问题,我会说应用程序和数据库,并在Notes部分写下这个推理。祝我好运:))
答案 1 :(得分:0)
如果信息仅与特定用户相关,则可以将其存储在会话状态/ cookie中。例如,存储用户的电子邮件/地址等。
如果您要缓存部分网页,可以使用Output Caching
[OutputCache(Duration = 3600)]
如果您有一个Web服务器,则可以使用应用程序缓存来存储一些常用的数据/列表。
如果您有一个Web场(多个服务器),您可以使用ncache
之类的内容如果您使用nHibernate for DB ORM,您可以使用nhibernate二级缓存