服务器端状态管理

时间:2014-07-28 02:15:55

标签: asp.net-mvc

我想知道ASP.NET MVC中的分布式应用程序,如果我必须存储全局 几乎没有变化的信息,首选的服务器端状态管理选项 - 应用程序状态,会话状态,数据库支持,配置文件属性?我认为它的会话状态和数据库支持。

2 个答案:

答案 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二级缓存