我想将每个用户信息保存在一个最好的地方(增强性能,资源,安全等......对于可伸缩的应用程序),这样做是最好的..会话或缓存? (ASP MVC)
答案 0 :(得分:2)
你可能想看看这个: http://msdn.microsoft.com/en-us/library/z1hkazw7.aspx
缓存可行,但在每个用户信息方面做得不好;它往往是应用程序全局信息。会话有效,但您可能会遇到并发问题。 http://blog.whiletrue.com/2010/09/asp-net-mvc-sessions-and-concurrent-requests-not-what-youd-expect/
我在从数据库中获取信息,将其加载到模型中,然后通过页面保存隐藏变量(Html.HiddenFor(x => x.MyField))方面拥有良好的经验。这使得页面无状态,您不必担心会话超时;然而,它并不安全。有点像ViewState-on-cheap。 :-)。
答案 1 :(得分:0)
您可以用来存储数据会话和数据库。
答案 2 :(得分:0)
对于持久存储(存储)用户信息(例如地址),我会选择个人资料提供商!
缓存可以在一段时间后过期,并且可以被整个应用程序访问。因此,为了可靠性和安全性,会话更适合基于用户的环境,就像它为其开发的那样。
如果您需要更多信息,请告诉我们!
马特
答案 3 :(得分:0)
对于那个用户来说,会话更合适并且是孤立的(即,您无法从其他人的会话访问另一个用户的会话)。如果需要从Web服务器环境中的多个Web服务器访问数据库服务器,也可以将其用作会话存储。