.NET Remoting服务器端挂起

时间:2009-03-10 21:46:31

标签: .net remoting

我们在.net应用程序和数据库之间有一个.net远程处理应用程序。偶尔我们会遇到奇怪的问题。远程呼叫只是挂起而永不返回。我们使用包嗅探器来检查流量。这似乎是服务器方面的问题。如果我们停止服务器应用程序,将立即抛出网络异常。但是,当我们调试服务器代码时,它不会遇到任何代码。似乎请求被阻止在远程堆栈内的某个地方。有没有人有类似的经历?

2 个答案:

答案 0 :(得分:1)

我确实在很久以前使用IPC在.Net远程处理过类似的问题。我不记得所有细节,所以请原谅我。我发现的问题是我的客户端应用程序正在远程调用服务器应用程序,这需要很长时间(分钟)才能完成。在将客户端和服务器连接到调试器并捕获所有引发的异常之后,我发现远程调用实际上最终抛出了各种超时异常(我的内存想要说内部消息与COM有关),因为没有在超时期间,IPC通道上发生了活动。显然,当这些远程连接超时时,双方的链接基本上都是死人走路。奇怪的是,我只能通过调试器看到这个异常 - 在发布模式下,我的应用程序就像你的一样挂起,没有任何关于原因的迹象。我找到了远程超时设置,只是关闭了超时(或者让它变得非常大,再次我不记得了),这解决了这个问题。

答案 1 :(得分:1)

事实证明,我们使用的CMS系统也使用.NET Remoting,它会覆盖我们的安全设置。我们关闭了远程应用程序上的安全设置,现在一切正常。