1. A method of provisioning resources from one or more pools of resources in an on-demand computing system, the method comprising: obtaining a request for a resource; establishing a plurality of categories associated with properties of the resources; obtaining values for the plurality of categories for at least a portion of the resources; weighting the values to provide a priority score; and determining a resource to be provisioned from the at least a portion of the resources based at least in part on the priority score.