Skip to Main Content
In a service-oriented IT infrastructure, functional capabilities of a computing component are externalized via one or more service interfaces. Driven by the demand for business agility and return-on-investment optimization, various dynamic service discovery and composition technologies have been proposed and developed with a common goal of enabling business-aligned fulfillment of customer requests. However, from the viewpoint of capacity planning and IT optimization, much work is still needed in helping an enterprise decide the "optimal" IT resources necessary for deploying the atomic services in support of those composite ones. The service deployment decision must be integrated with the request fulfillment policy so that the differentiated quality-of-service (QoS) requirements of service requests can be met, for instance, with minimum hardware/software cost. In this paper, we propose an approach for QoS-aware optimization of composite-service fulfillment policy. Without loss of generality, we assume that the optimization goal is to minimize the number of machines subject to response time and throughput requirements. After presenting our approach to the optimization problem using the assumption, we show that an NP-hard throughput optimization problem must be attacked. We then illustrate how we attack the problem via an efficient heuristic algorithm. The algorithm decomposes the end-to-end response time requirement for each type of composite service into atomic-service level response time assurance, and co-locate atomic services with similar response time assurance on machines with similar utilization characteristics. The algorithm exemplifies an integrated approach to optimizing service deployment and service composition. We demonstrate that the algorithm achieves a substantially higher throughput than a common baseline algorithm.