1. A computer-implemented method for directing requests for a workflow based composite web service in response to variations in network and node level resources, the method comprising: selecting one of a plurality of topologies at run time to which an incoming request is sent based on an availability of resources, wherein each of the topologies comprise a set of composite web service code partitions connected by communication links; receiving monitored data values for at least one parameter associated with nodes that host the workflow based composite web service code partitions and the communications links that connect said nodes; estimating performance metrics for respective topologies based upon said monitored data values, the monitored data values is received with greater frequency than the estimating of the performance metrics; and routing an incoming subsequent request for a workflow based composite web service to another one of the topologies based upon the estimated performance metrics for the respective topologies.