1

我编写了一个 HttpModule 接受请求,处理它(通过数据库查找),并将结果(html)输出回响应。(注意,HttpModule实际上是在请求完成之后才结束请求,所以没有正常的ASP.NET处理请求。)

由于数据库查找可能很昂贵/耗时,我想将结果存储在内存中,以便后续(相同)请求可以在不进入数据库的情况下提供相同的内容。

我可以在哪里存储(内存中)数据,以便它可用于 HttpModule 的后续调用?

4

2 回答 2

2

您可以将其存储在 中Application.Cache,结果将在应用程序范围内可用。如有必要,请务必不时检查“新数据”。

于 2009-07-07T06:08:32.267 回答
0

与从数据库中获取的数据相比,响应大小如何?一旦你在内存中有这些数据,那么渲染呢?如果渲染不是问题,我只会缓存数据并在每次请求时渲染它。如果渲染需要大量 cpu,那么您应该缓存完整的响应并直接从缓存中提供它。

于 2009-07-08T17:34:21.890 回答