ne of the largest changes in SQL Server 2008 Reporting Services (SSRS) is that it no longer relies on
IIS. Due mostly to feedback from end users on security (most do not like to keep web hosts active on their database
servers), the added benefits include reduced memory requirements and service spool-up time.
Testing the Performance of Requests
The tests used for this article were designed to time the performance of requests against the Reporting Service web service
(ReportServer2005.asmx). Report rendering and data retrieval was not tested.
The performance tests were conducted using virtual servers running both SQL 2005 and SQL 2008 (CTP4). The test harness was built in VS 2008 and run from the host machine, which was then connected to each Virtual Hard Disk (VHD) (via a web service) when needed.
See the sidebar for the specifications and applications.
Both virtual machine’s (VM’s) were running in parallel for the duration of each test. Web service functionality was evaluated using three separate tests:
- Cold Server Spool Up
- Warm Refresh
- Warm Server Spool Up
A simple ASPX test harness running on the host laptop OS made three connections to
- Accessed the web service on the tested VHD via URL
- Opened a connection to read a report definition from the web service
- Looped through the list of parameters in that report
|Author's Note: SQL Server Katmai CTP4 currently uses ReportServer2005.asmx; a “2008” version is not currently available, though it
works against Katmai DBs.|
In Visual Studio Web Developer Express 2008 (a free download from Microsoft), the author created a new project and a
proxy to the Reporting Service 2005 web service, and named it RS2005. Listing 1 shows the code for the default.aspx.
Each test was provided three trials. If an anomaly occurred, several more tests were run to minimize the effects of running all the tests on a laptop. At one point, the SQL 2005 VHD timed out after 90 seconds on a cold boot
test, but after several successful trials it did not seem fair to keep that test in. The tests were repeated until the results were consistent; you could eventually predict the length of time with fair accuracy for each test, as there was not much discrepancy.