session工做原理简介

         session是什么

         首先,咱们须要知道session是什么。有比较专业的人将session称之为会话控制。说实在的,若是这么说的话,我也不清楚session到底算是什么。浏览器

   其实session是一个存在服务器上的相似于一个散列表格的文件。里面存有咱们须要的信息,在咱们须要用的时候能够从里面取出来。相似于一个大号的map吧,里面的键存储的是用户的sessionid,用户向服务器发送请求的时候会带上这个sessionid。这时就能够从中取出对应的值了。服务器

         session有什么用

         提及session的做用,简单的举个例子:咱们在登陆某些网站的时候,输入了用户名密码,登陆之后再打开新的页面时,自动显示的是已登陆的状态,不须要再次从新登陆。这里就是session功能的一个小小的体现。session

         那么,刚才这个小小的应用发生了什么呢?网站

   

 

 

    如图所示:在用户1和用户2登陆的时候,咱们的服务器在他们登陆成功后,在session表中为他们每一个用户分配了一个sessionid而且存下了一个对应的信息。当用户第二次访问该服务器的时候,会将sessionid在request请求中携带者发送过去。这时咱们的服务器就能够根据sessionid肯定用户存储的数据,而后进行使用。如图所示:spa

    

    session的生命周期

         当session超过必定时间(通常为30分钟)没有被访问时,服务器就会认为这个session对应的客户端已经中止活动,而后将这个session删除。用以节省空间。3d

    当用户关闭浏览器时,sessionId的信息会丢失,虽然服务器session还在,依然没法访问到session中的数据。blog

相关文章
相关标签/搜索