1. A computer-implemented method for managing resources of a computer infrastructure services provider, comprising: receiving, by a management server computer, resource data from a plurality of resources of a data center, the resource data reflecting at least one of: power usage of at least one of the plurality of resources of the data center, processing loads of at least one of a plurality of servers in the data center, and at least one environmental condition related to the data center; determining, by the management server computer based at least in part on the received resource data, whether a condition has occurred related to one or more of the plurality of resources of the data center; receiving, by the management server computer, priority data reflecting priorities for terminating or shutting down resources of the data center, wherein a first portion of the plurality of resources are associated with executing program instances for excess program capacity users and use excess program execution capacity on a non-guaranteed basis, wherein a second portion of the plurality of resources are associated with executing program instances of other users that are not excess program capacity users, and wherein the priority data indicates that program instances of the excess program capacity users have a lower priority than program instances of the other users; determining, by the management server computer, based at least in part on the priority data and the lower priority of the program instances of the excess program capacity users, at least one of the first portion of the plurality of resources of the data center to terminate or shut down; and terminating or shutting down, by the management server computer, the determined at least one resources.