A design consideration: Reporting Services on the Application Tier

There are a few bits of any Team Foundation Server deployment which are either taken for granted, or completely ignored. One of them is:

Why shall I install SQL Server Reporting Services on the Application Tier?

Fair question, if you are not considering installing it on a separate box – a different approach, usually not as common as the former.

The idea is to centralise all the client-originated HTTP traffic on a single endpoint. The endpoint of course can be a cluster address where you have multiple SSRS servers and Application Tiers, but the concept is the same. Centralise your traffic, possibly using DNS names. The documentation suggest that too:

image

so that the data tier is exactly that: the storage for Team Foundation Server’s (and related, if you want) databases.

Beware: it is not wrong to install it on the data tier (it is actually supported since Team Foundation Server 2008), but it is a matter of best practices.