1. A method of processing queries in a network, comprising the steps of: defining a plurality of virtual clusters from a plurality of servers; routing a request to a virtual cluster of the plurality of virtual clusters based on predetermined criteria in order to allocate system resources; removing at least one of the plurality of servers from the virtual cluster when at least one of the plurality of servers is burdened; creating a new virtual cluster comprising only the removed at least one of the plurality of servers; returning the removed at least one of the plurality of servers back to the virtual cluster when the at least one of the plurality of servers is unburdened; monitoring performance of the plurality of servers; and sending a report in response to workload at one of the plurality of servers exceeding a pre-determined threshold so that routing of further requests to the one of the plurality of servers is altered; and removing the one of the plurality of servers from an associated virtual cluster and adding the one of the plurality of servers back into the associated virtual cluster in response to workload falling below the predetermined threshold.