Meeting client QoS expectations proves to be a difficult task for the providers of modern Internet services, especially when web servers experience overload conditions (steady or transient), which cause increased response times and request rejections, leading to user frustration, lowered usage of the service and reduced revenues. In this paper, we propose a server-side request scheduling mechanism that addresses these problems. Our Reward-Driven Request Prioritization (RDRP) algorithm gives higher execution priority to client web sessions that are likely to bring more service profit (or any other application-specific reward). The method works by predicting future session structure by comparing its requests seen so far with aggregated information about recent client behavior, and using these predictions to preferentially allocate web server resources. Our experiments using the TPC-W benchmark application and CBMG-based web workloads, with an implementation of the RDRP techniques in the JBoss application server, show that RDRP can significantly boost reward attained by the service, while providing better QoS to clients that bring more reward.
['Alexander Totok', 'Vijay Karamcheti']
Improving Performance of Internet Services Through Reward-Driven Request Prioritization