New web page

I just created a new web page.

The site is in Danish, and it is a running site, where you can see statistics about yourself and compare yourself to other runners. You can see the site here:

www.perfmon.dk or here:  www.performancemonitor.dk 

Since the site is in danish, and don’t cover anything technical, it don’t really fit anything on this web page.

It is however a product of a bundle of MS technologies, such as ASP.NET, LINQ, MS Live maps and reporting services. I think that justify a link 🙂

Reporting services – Slow first hit

After reporting services have been idle for a time, the next hit on it can be extremely slow. This is, as with every other RS problem, an IIS thing.

The problem is that when the IIS is not getting any traffic, it “goes to sleep”, to clear up memory for other applications.

That is nice, in the case where you are using the server for something else, and when you are only hosting standard ASP.NET pages, that can start up relatively fast. 

It is not so nice when you are using the server for reporting with reporting services. Then the first hit can take up to minutes. 

There are some solutions to it, depending of your version of IIS and SQL server.

IIS 6.0 and above and reporting services 2005:

  • Open IIS manager
  • Under application pools right click DefaultAppPool and select properties.
  • Under the performance tag, you can change the value for the idle timeout. Default is 20 minutes. If you change it to 480(60*8)(A working day), only the first hit of the day will be slow.
  • You can solve this problem by creating a dummy report each morning before everyone meets(See below)

IIS 5.1 and reporting services 2005

IIS 5.1 doesn’t come with an application pool, so here you have to change the idle timeout a different place.
The idle timeout for the IIS is placed in the machine.config file.
The machine.config is located somewhere around here:

%windir%\Microsoft.Net\Framework\v2.XXX\config\machine.config

Change the tag

<processModel autoConfig=”true”/>

to

<processModel idleTimeout=”08:00:00″ autoConfig=”true”/>

That should solve the problem, but you should still have the problem with the first report of the day, so you still have to schedule a dummy report.

Reporting services 2008

So what about reporting services 2008, where you don’t even need the IIS?
I don’t know, but I hope and guess, that is something simple. Please let me know if you know the answer 🙂

Creating a dummy report
There are two ways to create a dummy report.

The right way, is to schedule a report, and copy it to a file share or have it mailed to you.

If you don’t have those possibilities for some reason. You can create a report, that refreshes itself every hour or so. That way, the report server won’t fall asleep either.