Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/306.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 客户端断开连接挂起IIS应用程序池_C#_Web Applications_Iis 7.5_Windows Server 2008 R2 - Fatal编程技术网

C# 客户端断开连接挂起IIS应用程序池

C# 客户端断开连接挂起IIS应用程序池,c#,web-applications,iis-7.5,windows-server-2008-r2,C#,Web Applications,Iis 7.5,Windows Server 2008 R2,我有几个.NET 3.5站点在Windows 2008 R2 64位IIS 7.5 web服务器上运行相同的代码库。我们在允许用户在服务器上管理自己的文件(上载、下载、删除)的过程中遇到问题。在我们从Windows 2003上运行IIS 6的旧服务器上移动站点之前,我们从未遇到过此功能的任何问题。移动之后,我们有三个不同的站点完全锁定并停止执行请求。我必须重新启动应用程序池和网站才能让它们再次运行。我们将应用程序池更改为在经典模式下运行,这确实阻止了站点崩溃 在分析站点历史时,我们发现有20到3

我有几个.NET 3.5站点在Windows 2008 R2 64位IIS 7.5 web服务器上运行相同的代码库。我们在允许用户在服务器上管理自己的文件(上载、下载、删除)的过程中遇到问题。在我们从Windows 2003上运行IIS 6的旧服务器上移动站点之前,我们从未遇到过此功能的任何问题。移动之后,我们有三个不同的站点完全锁定并停止执行请求。我必须重新启动应用程序池和网站才能让它们再次运行。我们将应用程序池更改为在经典模式下运行,这确实阻止了站点崩溃

在分析站点历史时,我们发现有20到30人(一个班级)的小组在大约10分钟内上传多个文件(.5到2兆)。因此,我们将问题归结到这个文件管理功能上,并决定将数据存储移到本地驱动器上。我们继续在描述用户在工作完成前离开这些页面的机器上发现错误,因此我添加了Response.IsClientConnected测试。这一切似乎都有所帮助,但错误仍在继续。我们安装了一个应用程序(iispeek)来监视活动并报告长时间运行的请求。我将执行超时设置为5分钟,然后让IIS Peek监视器监视任何需要更长时间的请求。一天中,我们不断地在pdf和flash文件中发现多个错误,但它们最终都被清除了。因此,当文件管理功能出现错误时,我们根本无法管理文件(页面将超时)。我决定尝试使用AsyncPage解决方案,这似乎解决了文件管理锁定的问题。然而,我们仍然存在问题。我们在文件上传页面上遇到的错误往往会持续一个小时或更长时间,当问题存在时,即使使用AsyncPage解决方案,文件上传也需要相当长的时间才能完成。昨天,在其中一集中,我根本无法上传文件。我可以删除一个文件。因此,尽管问题较少,但文件管理功能仍然存在问题

下面是两个不同的错误,它们与用户在发送响应之前断开连接有关

异常消息:与远程主机通信时出错。错误代码为0x800704CD


异常消息:与远程主机通信时出错。错误代码为0x80070057。

有一次,我们在保存文件时意外将文件加载到内存中,出现了类似的问题。在使用实体框架(或任何框架)和二进制/blob数据类型时要小心