Web 应用程序使用来自 Web 服务的 XML,然后使用 XSLT 将其转换为 HTML。该应用使用 HttpModule 通过 AddOnPreRequestHandlerExecuteAsync 获取 XML。
使用的类:XmlDocument - 存储 xml。XslCompiledTransform - 存储转换,缓存在应用程序中。使用 BeginGetResponse/EndGetResponse HttpModule 和挂钩的 AddOnPreRequestHandlerExecuteAsync 事件的异步 HttpWebRequest。
除非没有其他可能的优化,否则我不想使用 XPathDocument。如果无法写入 XmlDocument,则需要一些复杂的代码才能将所有 XML 放在一起。还有一些不是来自 Web 服务的附加 XML,也必须添加到文档中。
任何建议都会很好。服务器似乎没有内存问题,如果这说明了什么,只是 CPU 使用率很高。
谢谢。
更新
经过大量搜索,我发现导致 cpu 争用的问题实际上是一个无限(或接近)循环,它根本不在我的代码中,并且由于它出现的位置的性质而隐藏在我的分析中。这里的教训,如果它没有意义,在撕裂你的代码之前寻找问题的替代推理。