首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >关闭浏览器后会发生什么?

关闭浏览器后会发生什么?
EN

Stack Overflow用户
提问于 2014-08-24 05:49:56
回答 1查看 1.7K关注 0票数 1

我们知道当我们关闭浏览器时,会话就会被破坏。

请帮助我进行以下查询。

假设我单击了注册页面上的submit按钮,内部调用了SQL存储过程,这需要更多的时间来执行。

同时,如果我关闭浏览,会发生什么?

  1. 我的sql连接仍然可用吗?如果是,那么在关闭浏览器后,我的存储过程仍处于执行模式?
  2. 会议什么时候会被摧毁?

想了解更多关于这个生命周期的信息,谢谢

EN

回答 1

Stack Overflow用户

发布于 2014-08-24 09:31:07

首先要记住这一点。

  1. 会话是与用户浏览器上的cookie连接的。
  2. 会议有一个暂停时间。

如果这两种方法中的任何一种都消失了,那么会话就消失了,所以让我们来分析一下它们。

饼干

如果cookie是一个会话cookie (临时的),那么当用户关闭浏览器时,如果不是临时的,那么当它过期时,或者如果用户清除它,或者如果用户处于私有模式,甚至没有保存,那么cookie就会消失。

因此,当与会话连接的cookie消失时,您将丢失会话

即使浏览器由于其他原因无法读取会话cookie,会话也可能丢失。

服务器上的会话数据

与cookie连接的会话是服务器上的数据字典。会话有一个超时,因此如果用户没有在这段时间内更新对服务器的调用,服务器就会杀死服务器上的会话数据。

另外,请注意,会话可以在Server上服务,也可以在运行在后台并将该数据保存在内存中的服务中。

如果将会话数据保存在内存中,则会话超时、IIS循环、以及出于原因清除会话数据的服务本身可能会丢失这些数据。

服务器端超时

如果您调用了一个长时间函数,并且用户结束了他们的连接,那么这个过程将继续运行,直到两端都得到超时为止。如果您的进程需要10分钟才能执行,那么这就不太安全了,您可能会得到超时,并且永远不会正确结束,即使用户仍然连接。如果你说了几秒钟,那么它的相对好,程序将执行,即使用户关闭他的浏览器端。

检查页面外的时间和sql服务器端的时间。如果您的用户连接良好,您将结束相同的,如果用户关闭他们的连接在中间。

请记住,在大量多用户调用的情况下,您可能会遇到会话锁的问题,请阅读此q/a ASP.NET服务器不异步处理页面

所以,注意这个过程不要超过几秒钟。

遗言

在一段时间内不丢失会话的最“安全的方法”是使用良好的安装cookie,这不是临时的,而是将他们的生命维持几个月(google保存cookie长达两年),并使用SQL Server保存会话数据。

更多详情可参阅:

ASP.NET状态管理建议

会话将不保留值,并且始终返回null。

使相关ASP.NET应用程序的会话与另一个ASP.NET应用程序保持活动

ASP.NET会话状态概述

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25468901

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档