2015-05-19 178 views
1

我问我的朋友,会话存储在哪里?在服务器或浏览器?他说,在服务器上。 然后我说“我认为保存在服务器上的东西叫缓存”。会话存储在哪里?

然后,我去谷歌搜索阅读文章,但我发现没有具体的正确答案,在MSDN也没有具体的答案。

+5

在服务器去记忆它存在于每个用户而不是缓存中。 –

+2

我相信这个问题可以解决阅读文档.... MSDN有关会话状态和可用存储的好文章... –

回答

1

通常将其保存在服务器的内存中,但您也可以拥有数据库支持的缓存。它是永远不会缓存在客户端上,因为它可以包含不应该为用户提供的信息,如数据库的密码。

的地方,你可以保存会话状态的完整列表,可以发现on MSDN

  • 是InProc模式,存储在Web服务器上存储会话状态。这是默认设置。
  • StateServer模式,它将会话状态存储在一个名为ASP.NET状态服务的独立进程中。这可确保在重新启动Web应用程序时保留会话状态,并使Web会话中的多个Web服务器可以使用会话状态。
  • SQLServer模式将会话状态存储在SQL Server数据库中。这可确保在重新启动Web应用程序时保留会话状态,并使Web会话中的多个Web服务器可以使用会话状态。
  • 定制模式,使您可以指定自定义存储提供程序。
  • 关闭模式,该模式禁用会话状态。
2

会议本身存储在服务器side.Each浏览器访问服务器将从服务器的唯一会话ID获得。此会话ID浏览器发送到请求到同一服务器的每个页面。 Session

所以在客户端(浏览器)的一面,只有会话ID存储在浏览器cookie.

(这是默认行为,当会话cookie的浏览器设置启用......还有一个技术所谓的“URL重写”嵌入会话ID作为URL查询参数,每个服务器被调用时,使应用程序可以工作,即使浏览器会话cookie被禁用)

欲了解更多信息,通过这个http://ejvyas.blogspot.in/2010/02/where-is-stored-is-it-in-browser-or-at.html

+1

不要使用内联代码来突出显示随机词。 – CodeCaster

+0

ok @CodeCaster ... –