2008-11-19 52 views
1

我被要求查看运行团队应用程序的WebServer上间歇性发生的问题。从IIS清除缓存的数据?

本质上,我们有一个web服务,可以在代码之间进行查找。如果你有代码类型A,你可以用它来查找相应的代码类型B.定期地,当内存运行时,当这个web服务被调用时,引发一个空引用异常。本质上,该服务将查找文件加载到缓存中,并依赖于文件,因此如果文件变得混乱,缓存将重新加载新文件。缓存对象的优先级设置为默认值。我猜测代码中的某处,它没有被验证,缓存对象仍然存在,并且当服务器上的内存变得很低时,该对象被抛弃导致错误。我希望能够重新创建错误并在开始深入研究此代码之前进行验证。

有没有在IIS管理器(或从命令提示符)强制正在运行的Web应用程序转储它的缓存的方法吗?我会认为这应该重新创建条件,因此重新创建该错误。更不用说,看到细节错误应该导致代码的正确部分。

感谢,

史蒂夫Brouillard

回答

0

我发现一个实用程序可以添加到ASP.NET应用程序,这将允许您动态管理缓存为一个完整的或单独的缓存对象。感谢.NET Rocks!dnrtv

下面是我使用的工具的链接。这使我能够即时清除有问题的特定对象,并证明错误。

感谢大家的帮助。 ASP Alliance Cache Manager.

Steve

0

我的直觉反应是设置将WebMethod的CacheDuration到零,然后再返回到任何你想要一个持续的基础上。我没有尝试过,但我认为这将转储缓存,然后再次启动它形成...

+0

感谢您的意见。这在过程中似乎并不奏效,但它确实值得一试。 – 2008-11-19 20:37:25