Using Real-Time Scheduling Principles in Web Service Clusters to Achieve Predictability of Service Execution

  • Vidura Gamini Abhaya
  • Zahir Tari
  • Peter Bertok
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6470)


Real-time scheduling algorithms enable applications to achieve predictability in request execution. This paper proposes several request dispatching algorithms based on real-time scheduling principles that enable clusters hosting web services to achieve predictability in service execution. Dispatching decisions are based on request properties (such as deadline, task size and laxity) and they are scheduled to achieve designated deadlines. All algorithms follow three important steps to achieve a high level of predictability. Firstly, requests are scheduled based on their hard deadlines. Secondly, requests are selected for execution based on their laxity. Thirdly, the underlying software infrastructure provides means of achieving predictability with high precision operations. The algorithms use various techniques to increase the number of deadlines met. One decreases the variance of task sizes at each executor while another increases the variance of laxity at an executor. The algorithms are implemented in a real-life cluster using real-time enabled Apache Synapse as the dispatcher and services hosted in real-time aware Apache Axis2 instances. The algorithms are compared with common algorithms used in clusters such as Round-Robin and Class-based dispatching. The empirical results show the proposed algorithms outperform the others by meeting at least 95% of the deadlines compared to less than 10% by the others.


Execution Time Earliest Deadline First Service Execution Task Size Request Size 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


  1. 1.
    Apache Software Foundation: Apache Synapse (June 9, 2008),
  2. 2.
    Apache Software Foundation: Apache Axis2 (June 8, 2009),
  3. 3.
    Ciardo, G., Riska, A., Smirni, E.: EquiLoad: a load balancing policy for clustered web servers. Performance Evaluation 46(2-3), 101–124 (2001)CrossRefzbMATHGoogle Scholar
  4. 4.
    Erradi, A., Maheshwari, P.: wsbus: Qos-aware middleware for reliable web services interactions. e-Technology, e-Commerce and e-Service, 2005. In: Proceedings of The 2005 IEEE International Conference on EEE 2005, pp. 634–639 (March April 1, 2005)Google Scholar
  5. 5.
    Gamini Abhaya, V.: Achieving Predictabiliy and Service Differentiation in Web Service Execution. Tech. rep., School of CS and IT, RMIT University, Melbourne, Australia (April 17, 2009),
  6. 6.
    Gamini Abhaya, V., Tari, Z., Bertok, P.: Achieving Predictability and Service Differentiation in Web Services. In: Baresi, L., Chi, C.-H., Suzuki, J. (eds.) ICSOC-ServiceWave 2009. LNCS, vol. 5900, pp. 364–372. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  7. 7.
    García, D.F., García, J., Entrialgo, J., García, M., Valledor, P., García, R., Campos, A.M.: A qos control mechanism to provide service differentiation and overload protection to internet scalable servers. IEEE Transactions on Services Computing 2(1), 3–16 (2009)CrossRefGoogle Scholar
  8. 8.
    Gartner : SOA Is Evolving Beyond Its Traditional Roots (April 2, 2009),
  9. 9.
    Gartner and Forrester: Use of Web services skyrocketing (Septmeber 30, 2003),
  10. 10.
    Gmach, D., Krompass, S., Scholz, A., Wimmer, M., Kemper, A.: Adaptive quality of service management for enterprise services. ACM Transactions on the Web (TWEB) 2(1), 1–46 (2008)CrossRefGoogle Scholar
  11. 11.
    Graham, S., Davis, D., Simeonov, S., Daniels, G., Brittenham, P., Nakamura, Y., Fremantle, P., Konig, D., Zentner, C.: Building Web Services with Java: Making Sense of XML, SOAP, WSDL and UDDI, 2nd edn. Sams Publishing, Indianapolis (2004)Google Scholar
  12. 12.
    Harchol-Balter, M.: Task Assignment with Unknown Duration. Journal of the ACM 49(2), 260–288 (2002)MathSciNetCrossRefzbMATHGoogle Scholar
  13. 13.
    Harchol-Balter, M., Crovella, M., Murta, C.: On Choosing a Task Assignment Policy for a Distributed Server System. Journal of Parallel and Distributed Computing 59(2), 204–228 (1999)CrossRefGoogle Scholar
  14. 14.
    Microsoft: Windows Communications Foundation,
  15. 15.
    Pacifici, G., Spreitzer, M., Tantawi, A., Youssef, A.: Performance management for cluster-based web services. EEE Journal on Selected Areas in Communications, I 23(12), 2333–2343 (2005)CrossRefGoogle Scholar
  16. 16.
    Sun Microsystems: Glassfish Application Server - Features (2009),
  17. 17.
    Sun Microsystems: Sun Java Real-time System (2009),
  18. 18.
    Vilas, J., Arias, J., Vilas, A.: High availability with clusters of web services. Advanced Web Technologies and Applications pp, 644–653Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2010

Authors and Affiliations

  • Vidura Gamini Abhaya
    • 1
  • Zahir Tari
    • 1
  • Peter Bertok
    • 1
  1. 1.School of Computer Science and Information TechnologyRMIT UniversityMelbourneAustralia

Personalised recommendations