我创建了一个ASP.NET的MVC 3应用程序,允许用户通过各种各样的基于文件名的媒体文件进行搜索。有大量的这些文件,所以我创建了一个倒排索引,我将它存储在内存中。具体来说,我的故事作为一个坚持静态数据通过应用程序池回收
Dictionary<string,List<string>>.
好了,这个指标首先必须以可搜索的创建,所以我创建了一个方法来构建它。它工作正常,一切都很好,但每当AppPool刷新时,我的索引就会丢失。我尝试关闭AppPool回收,但我认为这是一个坏主意(它似乎无论如何回收)。
我基本上不知道我的下一步行动应该是什么。有没有办法检测AppPool何时刷新并重建我的索引?或者完全禁用应用程序池回收是安全的吗?
干杯, -Josh