0

我有一个 SSRS 2008 R2,我想提高性能。是否可以在给定日期范围内为所有客户缓存此报告,以便即使他们选择此报告的一部分,它仍然会在缓存与数据源之间运行?例如,如果我为区域 AC 缓存 1/1/12-6/1/13,然后用户仅为区域 A 运行 1/1/13-6/1/13 的此报告,它会耗尽缓存吗还是数据源?

如果我将此报告设置为每 15 分钟使报告的临时副本过期,这是否意味着如果用户等待 > 15 分钟,它就不会耗尽缓存?

4

1 回答 1

1

There are various options for caching reports with parameters. Taken from the relevant documentation for SSRS 2008 R2:

To improve server performance, you can preload the cache. You can preload the cache with a collection of parameterized report instances in two ways:

  1. Create a cache refresh plan. When you create a refresh plan, you can specify a schedule for a single report or specify a shared schedule.

  2. Create a data-driven subscription that uses the Null Delivery Provider. When you specify the Null Delivery Provider as the method of delivery in the subscription, the report server targets the report server database as the delivery destination and uses a specialized rendering extension called the null rendering extension. In contrast with other delivery extensions, the Null Delivery Provider does not have delivery settings that you can configure through a subscription definition.

For your exact scenario's the best thing you can do to get an exact answer is try it out, using the mentioned documentations (and links therein) to understand and tweak the details.

(The last question you ask confuses me a bit; if a cached report (w/o preloaded cache) expires after 15 minutes then the report will be run the first time after that, and remain cached for another new 15 minutes.)

于 2013-05-28T18:53:28.160 回答