IIS和ASP.NET:当客户端断开连接时,请求工作进程会如何处理?

他笑了

上下文:我们在一个AWS负载均衡器后面运行ASP.NET站点,该请求在60秒后超时。在缓存预热等过程中,有史以来对我们网站的第一个请求可能需要更长的时间。我们可以对该策略进行明显的改进,但这超出了此问题的重点。

假设与我们的IIS实例的连接在60秒后关闭,那么就我的代码运行而言,执行该请求会发生什么情况?

可以

  • 即使没有人发送最终回复,该继续吗?
  • 终止进程-可能在某些磁盘IO操作期间?
  • 运行服务器的配置超时值?
  • 做些更聪明的事情?
亚里士多德

这实际上取决于您的代码。

如果您的循环/工作花费的时间太长,则等待结束,然后如果他们去做一些数据发送到连接并发现连接已关闭,则您有异常。我的意思是,如果没有数据发送到客户端以检查连接是否丢失-那么您的进程仍将运行到最后。

在女巫的情况下,死循环将关闭并挂起取决于池配置。在这里,您可以设置最大运行时间,然后设置必须等待的时间,直到他杀死您的无响应进程。

该功能HttpResponse.IsClientConnected检查客户端是否仍处于连接状态,如果您想检查并中止较长时间的过程,可以使用它。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

IIS和ASP.NET模拟

新客户端连接和断开连接时,有什么方法可以接收事件?

我在ASP.NET和IIS中需要什么?

ASP .NET Core:Directory.EnumerateFiles 和 IIS 托管

如何处理服务器和客户端之间的时区?

如何处理服务器和客户端的时区差异

应用程序客户端如何处理传入的即时消息和通知?

Node.js和快速路由,如何处理客户端承诺

每个客户端进程的IB浏览和持久连接

ASP.NET Web-api核心:处理客户端连接问题并查找冲突

客户端的Eclipse Milo中如何处理断开连接/重新连接?

ASP.NET 5应用程序和IIS日志之间的客户端IP地址不一致

BizTalk WCF-webhttp 和 IIS:如何处理身份验证和授权、ASP.NET 兼容性或自定义?

当请求的命名客户端未定义时,使 ASP.NET 核心 IHttpClientFactory 抛出

ASP.NET WebAPI和IIS中的请求时间不一致

客户端立即连接和断开连接,没有错误消息?

如何在IIS中正确发布和更新ASP.NET应用程序

ASP.Net Core:SSH 客户端的处理

如何在 ASP.NET Core 中处理用于登录 SMTP 客户端的密码存储?

使用 gRPC,我应该如何处理服务器和客户端之间的部分结果?

GitHub客户端作为渐进式Web应用程序:如何处理提交和推送?

如何使这个 ASP.NET Core 模型验证在客户端工作?

ASP.NET身份和移动客户端

ASP.net .Net错误页面和IIS错误页面之间有什么区别?

使用socket.io和nodejs强制客户端与服务器断开连接

用于处理来自客户端应用程序的令牌请求的 ASP.NET Core 3.1 控制器方法

IIS和并发请求

URL中的点导致ASP.NET MVC和IIS出现404

ASP.NET Web API-不允许放置和删除动词-IIS 8