Patent ID: 7356592

Claim:
A method for controlling a web farm comprising: providing a web farm comprising a plurality of different websites and a plurality of web servers, wherein each website is assigned to a set of one or more of the web servers; receiving a customer request for accessing a target website of the web farm; categorizing the received customer request for the target website as either (i) a shareable customer request which can be processed by a server assigned to another website of the web farm or (ii) an unshareable customer request which can not be processed by a server assigned to another website in the web farm; if the received customer request for the target website is categorized as a sharable customer request, routing the customer request to a server assigned to another website which can process the received customer request; if the received customer request for the target website is categorized as an unshareable customer request, routing the customer request to a server specifically assigned to the target website for processing, and a Goal procedure, said Goal procedure comprising determining, for each said customer request, an optimal server from among said servers to which each said customer request is to be assigned so as to minimize an average customer response time at any given moment, given said assignment of said websites to said servers and a current customer request load, wherein, said Goal procedure is effected by minimizing an objective function measuring expected response time as a function of customer request arrival rate subject to a plurality of constraints including a maximum load due to a plurality of public requests for the target website on the server and a plurality of private requests for the target website on the server.