Companies I have worked for replace them every 3 years
Never. We usually replace major servers every three or four years, but we then use the old servers for the less-important and/or less performance-critical applications.
We have lots of eight-to-ten year old servers, but we're not reliant on them.
I think we're going to just remove them as we virtualise, but physical hardware is still handy for things like fax servers.
It is interesting to read the comparisons.
I guess there is no 1 answer as it depends on the size of the company, usage of servers, etc.
I have only worked in large companies where the servers are treated as assets that get devalued (and therefore replaced) every 3 years. Plus support costs increase after this time so it can actually be more economical to replace large servers after this period.
We used to do that (since it was the length of the warantee), but we now get a 5 year warantee as standard so that we don't have to spend so much of our time migrating from server to server. I expect that virtualisation will begin to make this easier in future.
Most modern servers are good for at least a 5 year life in my experience. The warantee tends to be the limiting factor.... we clearly can't run anything mission critical on a server that is out of a support contract!
Typically we replace Intel servers after 4 years, when the manufacturers warranty has expired. We want to limit the number of servers that are "out of warranty" and have to pay additional maintenance for.
Recently, we've invested in a number of vmware clusters. We've already migrated over 100 physical servers onto them and all new servers Intel will be vm (unless there is a HUGE reason why not).
This allows us to upgrade/replace the server nodes without downtime, at our convenience one at a time.
Extended warranties become more expensive throughout the lifecycle of hardware. Things like a SAN is worth the cost because it's a big hassle to replace a large SAN, but a server isn't as much. We've done costings on this it's always worth it (for us) to extend the warranty by 1 year at least before we deocommision a server (or virtualize it).
It might be riskier to replace some business critical servers than it is to keep them running - it's a valued judgement you need to make on a case-by-case basis.