2012-04-24 61 views
2

我有一个Web服务返回一个XML文件。IIS 7.5发送大XML时崩溃

第一个请求返回一个大小约为50MB的XML文件,任何新的请求都会更小,更像1KB左右。

发送大XML时(仅在第一个请求时),我的IIS崩溃。

我收到错误504,并在事件查看器,我可以看到:

Faulting application name: w3wp.exe, version: 7.5.7601.17514, time stamp: 0x4ce7afa2 
Faulting module name: clr.dll, version: 4.0.30319.239, time stamp: 0x4e1822f4 
Exception code: 0xc00000fd 
Fault offset: 0x0000000000001177 
Faulting process id: 0x15cc 
Faulting application start time: 0x01cd225011f055d0 
Faulting application path: c:\windows\system32\inetsrv\w3wp.exe 
Faulting module path: C:\Windows\Microsoft.NET\Framework64\v4.0.30319\clr.dll 
Report Id: 5110375b-8e43-11e1-b097-001b217fde7f 

我试图谷歌这个错误,但一无所获!

我想也许我应该增加应用程序池内存大小或CPU使用率,不知道它是否是问题。

你们有什么想法吗?如何解决它?

+0

IIS返回什么信息作为响应正文?如果你的浏览器不显示它,你可以找出使用提琴手。 – usr 2012-04-24 20:49:32

+0

无法在提琴手或浏览器中看到任何东西,我在小提琴中看到的所有内容是:ReadResponse()失败:服务器没有为此请求返回响应。 – 2012-04-24 20:51:38

+0

好的。将visual studio附加到w3wp.exe并将其设置为中断异常(ctrl-shift-e)。 Plz发布完整的例外。 – usr 2012-04-24 20:52:47

回答

0

尝试发送小XML而不是大XML。

+0

由于我的XML是动态的,它非常有问题。 – 2012-04-24 20:54:38

+0

@IdoLazar:由于您的XML是动态的,您能向我们展示如何制作XML? – user7116 2012-04-24 20:58:30

+0

我刚刚从数据库中获取数据,并将其发送给客户端。对于较小的XML(如30MB),它可以完美快速地工作!对于比它更大的崩溃 – 2012-04-24 21:00:43

2

0xc00000fd是....堆栈溢出!所以它听起来像你需要附加一个调试器,看看发生了什么

+0

我没有将VS安装在XML来自的机器上。除了VS,我怎么能做到这一点? – 2012-04-24 20:59:55

+0

我认为这是原因。我建议你在所有事情上抓拍(StackOverflowException)并记录结果。 – usr 2012-04-24 21:00:42

+0

可以通过向IIS应用程序池添加另一个RAM来解决问题吗?或即时通讯不是真的得到它? – 2012-04-24 21:02:19