SSRS 配置 rsreportserver.config <RecycleTime>

SSRS Configuration rsreportserver.config <RecycleTime>

我在访问当天的第一份 SSRS 报告时遇到问题需要更多时间。但是我开始了解 <RecycleTime>,我找到了以下参考资料来理解这个场景。

SSRS Slow Startup

Speed up SSRS on the first Run

还有一些地方我不是很清楚,请问有没有人能帮我解决下面的问题??

  1. 如果我设置12小时<RecycleTime>,那么每隔12小时SSRS服务会被强制重新初始化?或者循环周期会在每次最后一次使用SSRS-Service(我是说最后一次使用SSRS报告)后延长?

  2. 有什么办法可以在一定时间后停止重新初始化吗?或者在重新初始化后自动调用第一个报告的任何其他选项,以便用户可以在没有缓慢启动的情况下访问他们的报告?

编辑:1Powershell 中执行重启服务命令时出错 (服务名称正确)

PS C:\Users\XYZXYZ> Restart-Service "SQL Server Reporting Services (MSSQLSERVER)"

PS C:\Users\XYZXYZ> Restart-Service "ReportServer"

Restart-Service: Service 'SQL Server Reporting Services (MSSQLSERVER) (ReportServer Cannot open service.
Occurrence location Line: 1 Character: 1
+ Restart-Service "SQL Server Reporting Services (MSSQLSERVER)"
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     + CategoryInfo: CloseError: (System.ServiceProcess.ServiceController: ServiceController)
     + FullyQualifiedErrorId: CouldNotStopService, Microsoft.PowerShell.Commands.RestartServiceCommand

[已解决]:(Edit-1)错误: 打开 Powershell 作为 Run as Administrator

  1. 回收时间是从上次重新启动 SSRS 开始计算的。什么时候 发生回收,释放 SSRS 中的空闲资源。这个值 可以更改以允许 SSRS 将资源保留更长时间 以防止由于重新初始化 SSRS 资源而导致速度下降。 所以是的,回收是强制的。
  2. 实现快速启动的一种方法是在回收时间之后立即安排 'dummy' 运行 报告。

尝试将再循环时间设置为 1440 分钟(=24 小时),并手动(或更好,自动)让 SSRS 在预设时间(例如午夜)重新启动。

如果您 运行 在与 SQL 服务器引擎相同的机器上使用 SSRS,您可能需要仔细监控 SSRS 内存使用并相应地设置 SSRS 最小工作集。

要控制 SSRS 回收发生的时间,您可以从 SQL 代理作业执行一个 1 行 powershell 脚本在 5:50 说,然后在早上 6 点生成您的订阅报告。这将重新启动 SSRS,并且用户在随后生成报告时不应看到任何性能下降。 [您将需要 运行 PowerShell 作为管理员]

restart-service 'ReportServer'

Building a script to restart REPORTING SERVICES automatically

Application Domains for Report Server Applications

Configure Available Memory for Report Server Applications