Reporting Service 告警"w WARN: Thread pool pressure. Using current thread for a work item"

简介:

如果Reporting Service偶尔出现不可访问或访问出错情况,这种情况一般没有做监控的话,很难捕捉到。出现这种问题,最好检查Reporting Service的日志文件。

    今天早上就遇到这样一个案例,应用程序监控到调用SQL SERVER 2005的Reporting Service出现Method failed: HTTP/1.1 500 Internal Server Error 。检查C:\Program Files\Microsoft SQL Server\MSSQL.3\Reporting Services\LogFiles下的日志文件,发现出现问题时段,有如下错误信息:

w3wp!runningjobs!1!8/4/2015-08:50:58:: w WARN: Thread pool pressure. Using current thread for a work item.

w3wp!runningjobs!1!8/4/2015-08:50:58:: w WARN: Thread pool pressure. Using current thread for a work item.

w3wp!runningjobs!1!8/4/2015-08:50:58:: w WARN: Thread pool pressure. Using current thread for a work item.

w3wp!runningjobs!1!8/4/2015-08:50:58:: w WARN: Thread pool pressure. Using current thread for a work item.

w3wp!runningjobs!1!8/4/2015-08:50:58:: w WARN: Thread pool pressure. Using current thread for a work item.

w3wp!runningjobs!1!8/4/2015-08:50:58:: w WARN: Thread pool pressure. Using current thread for a work item.

w3wp!runningjobs!1!8/4/2015-08:50:58:: w WARN: Thread pool pressure. Using current thread for a work item.

关 于这个告警信息,网上有不少资料建议调大IIS下面的应用程序程序池(Application Pools)下ReportServer以及ReportService的最大工作进程数(“Maximum number of worker processes")参数。这样就能扩大同时并行处理的报表数量。

clipboard

if you are using IIS 6, you can increase the number of worker processes for the Report Server application pool. You can use this value to scale up the number of reports you can run concurrently. So the number you would need is approx. max. number of concurrent requests * number of concurrent database fetches in report.

那么如何设置最大工作进程数(“Maximum number of worker processes"),有篇文章介绍了下: 按核设置最大工作线程数。 但是由于有些服务器上面还部署有其它应用,还是要根据具体应用场景设置,设置完成后监控性能计数器( performance counters )来判断设置值是否合理。

Some searches brought back some information suggesting increasing the number of worker threads but other than a description of what the warning meant not much else.
There was one post which suggested one process per socket, that would equate to 4 on our servers, but that didn't seem much change especially as one of our servers was set to 1 and the other to 5.
I suggested we should set this to at least 1 per core which would give us 16 and then monitor carefully. My colleague had done some research about queues and put up some performance counters to watch this alongside process explorer to actually see how many processes fired up.

 

相关文章
|
2月前
Error:Execution failed for task ':app:processDebugManifest'. > Manifest merger failed with multiple
Error:Execution failed for task ':app:processDebugManifest'. > Manifest merger failed with multiple
13 1
|
2月前
|
安全
Error:Execution failed for task ':transformClassesAndResourcesWithProguardForRelease'
Error:Execution failed for task ':transformClassesAndResourcesWithProguardForRelease'
13 0
|
2月前
Error:Execution failed for task ':app:javaPreCompileDebug'. > Annotation processors must be explicit
Error:Execution failed for task ':app:javaPreCompileDebug'. > Annotation processors must be explicit
67 0
|
Java 索引
logstash问题记录:Attempted to resurrect connection to dead ES instance, but got an error
logstash问题记录:Attempted to resurrect connection to dead ES instance, but got an error
648 0
logstash问题记录:Attempted to resurrect connection to dead ES instance, but got an error
jMeter Thread group 对应的 constant timer
jMeter Thread group 对应的 constant timer
jMeter Thread group 对应的 constant timer
|
测试技术
The concurrent snapshot for publication 'xxx' is not available because it has not been fully generated or the Log Reader Agent is not running to activ
在两台测试服务器部署了复制(发布订阅)后,发现订阅的表一直没有同步过来。重新生成过snapshot ,也重新初始化过订阅,都不能同步数据,后面检查Distributor To Subscriber History, 发现有如下日志信息: The concurrent snapshot for pub...
1507 0
|
网络协议 Java 容器
【报错】项目启动,仅仅报错 One or more listeners failed to start. Full details will be found in the appropriate container log file
今天spring4.3.13 项目,整合ActiveMQ的时候,项目启动在自动部署到tomcat下的时候,不能正常的部署,仅仅报错如下: Connected to server [2017-12-08 03:57:12,428] Artifact springDemo:war exploded: Artifact is being deployed, please wait.
6168 0