首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SQL Reporting services:第一次调用非常慢

SQL Reporting services:第一次调用非常慢
EN

Stack Overflow用户
提问于 2012-06-26 20:11:36
回答 6查看 57.4K关注 0票数 18

我已经安装了一个带有一些报告的服务器(2008 R2)。但是我有一些性能上的问题。

今天对服务器的第一次调用(以报表界面为例)非常慢(充其量大概是30-45秒)。

然后报告生成是“快速的”(1-2秒)。

对服务器的下一次调用总是禁食到第二天。我的印象是它在内存中加载了很多东西。但是什么需要30-45秒才能加载到内存中?如何只加载一次?

服务器已经足够好了(四核,8 8GB的内存,目前还没有达到它的容量)。

有什么问题吗?我该如何解决这个问题?

这些报告在一周内只会发布4-5次,所以如果我不能改变这一点,它们总是会很慢。由于它对客户是可用的,我只是不能让他们理解这一点(而且报告是通过网站调用的,所以我冒着超时的风险)。

非常感谢

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2012-06-26 22:25:31

这似乎是一个SSRS问题。你的报告没有错。

在长时间不活动之后,第一次访问SSRS需要更多的时间来加载,这是“正常的”。该问题是由SSRS的工作方式以及SSRS在特定时间段后定期重新启动应用程序域引起的。应用程序域重新启动后,在第一次请求SSRS时,它需要加载所有设置,这需要相当长的时间。

This博客秀是解决这种情况的办法

票数 23
EN

Stack Overflow用户

发布于 2016-04-26 04:34:53

下面是我为解决这个问题而编写的powershell脚本。它被设置为每隔1:00am运行一次的任务:

代码语言:javascript
复制
Stop-Service "SQL Server Reporting Services (MSSQLSERVER)"
Start-Service "SQL Server Reporting Services (MSSQLSERVER)"
$wc = New-Object system.net.webClient
$cred = [System.Net.CredentialCache]::DefaultNetworkCredentials
$wc.Credentials = $cred
$src = $wc.DownloadString("http://localhost/Reports/Pages/Report.aspx?ItemPath=***NAME OF HOME PAGE***")
票数 2
EN

Stack Overflow用户

发布于 2012-06-26 20:14:56

我能想到的最好的解决方案是通过windows服务中的windows批处理命令向报告的http页面发出一个'curl‘命令。每天早上在用户进来之前,这会使页面运行起来。

不再有权访问代码(job是在一段时间之前),但这个问题展示了如何使用curl:

http://blogs.plexibus.com/2009/01/15/rest-esting-with-curl/

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11207049

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档