我正在尝试使用“WCF服务发布向导”将一些HL7模式(有很多)发布为wcf服务。该向导似乎运行并完成得很好,创建了一个公开我想要的模式的服务。但是当我尝试浏览新创建的服务时,我得到“服务器应用程序不可用”...我查看了事件查看器并注意到错误消息:“System.OutOfMemoryException”。我在查看“任务管理器”时再次测试,我注意到aspnet_wp.exe在终止之前消耗了超过1 GB的RAM(应用程序池可能在达到允许的最大内存消耗后回收)。
我对为什么会发生这种情况感到非常困惑,所以我决定使用“Web服务发布向导”发布与ASMX Web服务相同的模式,看它是否会有所不同。在运行向导之后,我尝试浏览该服务,它运行得很好,没有任何问题。我查看了生成的WSDL定义,这个定义非常庞大,所有引用的模式都被添加为内联模式,而不是包含或导入。
这让我相信它可能是WSDL生成的一个问题,在已发布的模式中有如此多的包含,但我现在还不确定是否会出现这种情况......
是否有人在尝试将模式发布为wcf服务时遇到类似问题? 我欢迎所有可能使我在这个问题上朝着正确的方向前进的建议。
感谢。
-M.Papas
答案 0 :(得分:0)
这个问题肯定是WSDL生成工具的内存问题。将复杂甚至半复杂的模式发布为Web服务或WCF服务通常以内存不足异常结束。我曾经做过几次这样的SAP iDoc演示,而且模式对于WSDL工具来说太复杂了。希望有所帮助。