1. A method of determining weights to be used for load balancing in a server farm computer system, comprising: estimating a relative workload by a processor, which is characteristic of the workload of said system relative to the capacity of said system, said relative workload is estimated using work queue sizes stored in memory and accessed by the processor for requests to said system, oscillation metrics as a function of changes in said weights, and CPU delay metrics, wherein said oscillation metrics is a measure of resource usage deviation as a function of changes in said weights and said oscillation metrics is a measure of performance as a function of changes in said weights; wherein said weights are computed as, 
 final_weight i =old_weight i −sub_delta i +add_delta i 
 where 
 sub_delta i =old_weight i *WeightDelta, add_delta i = new_raw ⁢ _weight i ∑ j = 0 n ⁢ new_raw ⁢ _weight j × WeightPool , WeightDelta = WeightDeltaMax relative_workload × c , old_weight i =weight assigned to member i in previous weight generation interval, new_raw_weight i =un-refined weight generated for member i for current weight generation interval, sub_delta i =an amount that is to be reallocated from member i during current weight generation interval add_delta i =amount reallocated to member i during current weight generation interval, WeightPool=total amount of weight aggregated from all members to be reallocated, final_weight i =final weight assigned to member i , and WeightDeltaMax=largest weight change permitted.