views:

1235

answers:

3

I have an asp.net page that is trying to access a SSRS 2008 ReportServer through the ReportViewer control. The reports are accessed using a proxy account that is setup with 'Browser' role on the server. With a regular report access scenario this setup works fine. but whenever we try to load test this page using 100 virtual users, we start seeing "unable to connect to remote server" errors. the load test is setup to start with 10 users and rampup 10 users after every 30 seconds. the test is setup to run for 30 mins.

the stack trace is as below:

System.Net.WebResponse GetWebResponse(System.Net.WebRequest) System.Web.Services.Protocols.WebClientProtocol.GetWebResponse(WebRequest request) at System.Web.Services.Protocols.HttpWebClientProtocol.GetWebResponse(WebRequest request) at Microsoft.SqlServer.ReportingServices2005.Execution.RSExecutionConnection.GetWebResponse(WebRequest request) at Microsoft.Reporting.WebForms.ServerReportSoapProxy.GetWebResponse(WebRequest request) at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters) at Microsoft.SqlServer.ReportingServices2005.Execution.ReportExecutionService.LoadReport(String Report, String HistoryID) at Microsoft.SqlServer.ReportingServices2005.Execution.RSExecutionConnection.LoadReport(String Report, String HistoryID) at Microsoft.Reporting.WebForms.ServerReport.GetExecutionInfo() at Microsoft.Reporting.WebForms.ServerReport.SetParameters(IEnumerable`1 parameters)

is there something in the report server configuration that needs to be altered to support one such load profile? i am thinking, 100 users is not a lot for the box to handle, given that the box has QuadCore Xeon 3.Ghz and 10GB RAM.

thoughts?

A: 

Some questions;

What is the observed load on the report server; depending on the report you might overload it with a low number of users if returning thousands on thousands of rows of data and manipulating them. Depending on how you are loading up your vu's you might be pumping too much data / requests in too soon.

Is there an adaptive firewall/ windows firewall running on one of the machines ? Some firewalls would see this load test as hostile behavior and block it part way into the test.

Have you ruled out an AD issue ? If not is the sqlserver setup into AD correctly (trusted for delegation and has a registered SPN) and is/are the AD server(s) performant whilst running the test; i have been involved in a load test at one site which used the normal domain servers; whilst the test ran we crashed users out of apps and servers all over the network not involved in the test as we overloaded the domain controllers through millions of requests through badly setup servers.

u07ch
The aspx page shows a list of Report Urls - and each report opens up in a new tab. the test entails clicking on a report url, putting in some parameters and hitting 'view report', wait till the response is returned, then return to the report list and click on the next report Url. this is done till we are done with all report urls. we have about 15 reports and only 3 or 4 of them bring back large amounts of data. coming to the observed load on the server - the CPU usage ranges from 40-85 and stays at 100 for a second or so..
Check the SSRS logs and compare the data around the times running on your performance test to see what it has to say about the reports being run as the errors are occurring, (http://msdn.microsoft.com/en-us/library/ms159110.aspx) Do the 100% load times map to the server failout; can you map it to one report by removing it from the test loop.
u07ch
we found that a more gradual ramp up of users is not causing these errors. it appears to be happening only when we ramp up at the pace i mentioned earlier. since this SSRS box is a VM, we are considering running this test against another SSRS instance hosted on a physical box to see if we get different results.
A: 

hi there,

I highly believe that your SSRS server is overloaded. Do you host your SSRS on a shared or dedicated server? If you are hosting it on a shared server, you should talk to your host about this issue. I host my SSRS 2008 at asphostdirectory.com and so far, the service is truly excellent! I can remotely connect to my ReportManager and I can administer my reports online. So far, I am paying around $6.99/month to host my site with them and certainly, this is the best value I can get at the moment.

If you host your SSRS on a dedicated server, you should consider upgrading your server resources. If you truly have 10GB with Quad Core server, you should not have a problem at all! I am not sure how much traffic that your SSRS can generate, but I truly believe that a DEDICATED server with 4GB RAM is much more than enough to just handle 100 concurrent users.

Hope this helps

A: 

You may want to check the application pool settings for the web site hosting SSRS. Make sure none of the request limits are set to anything low. You may want to change some of the settings and rerun your tests to see if it has any effect either way.

Also, if you start with 10 users, add 10 more users every 30 seconds, and run the test for 30 minutes, wouldn't that make it more like 600 users? Or do you stop adding users after five minutes?

Aaron Daniels
yes. we stop adding users after five minutes. and let the test run for 30 mins. I will need to check the app pool settings on the web box.