1. For use in a multi-tier computer network wherein each tier other than the top tier includes one or more servers that directly support one or more servers in a higher tier, a method of selecting servers in each of the tiers to optimize performance of an application executing in one of the tiers, said method comprising the steps of: beginning at a server in the lowest tier in the network, generating an aggregated health score based on the performance capability of hardware and software components of said server and on any aggregated health scores reported by other servers that directly support said server and making the generated aggregated health score available to any server in a higher tier that has a direct run-time dependency on said server; repeating the foregoing steps for servers in successively higher tiers in the network until aggregated health scores have been generated for each server in the computer network; at a server at the highest tier in the network, identifying each server in an adjacent lower tier on which said server has a direct run-time dependency, receiving an aggregated health score from each such server, comparing the received health scores and selecting the server having the most favorable health score; and beginning at the server selected in the preceding step, repeating said step until servers have been selected at all tiers in the network.