Nothing Special   »   [go: up one dir, main page]

Skip to main content
Log in

Building Web services middleware with predictable execution times

  • Published:
World Wide Web Aims and scope Submit manuscript

Abstract

Predictability of execution has seldom been considered important in the design of Web services middleware. However, with the paradigm shift brought by cloud computing and with offerings of Platforms and Infrastructure as services, execution level predictability is mandating an increased importance. Existing Web services middleware are optimised for throughput with unconditional acceptance of requests and execution in a best-effort manner. While achieving perceived levels of throughput, they also result in highly unpredictable execution times. This paper presents a generic set of guidelines, algorithms and software engineering techniques that enable service execution to complete within a given deadline. The proposed algorithms accept requests for execution based on their laxity and executes them to meet requested deadlines. An introduced admission control mechanism results in a large range of laxities, enabling more requests to be scheduled together by phasing out their execution. Specialised development libraries and operating systems empower them with increased control over execution. Two widely used Web services middleware products were enhanced using these techniques. The two systems are compared with their unmodified versions to measure the predictability gain achieved. Empirical evidence confirms that the enhancements made enable these systems to achieve more than 90% of the deadlines under any type of traffic, while the unmodified versions achieve less than 10% of the deadlines in high traffic conditions. Predictability of execution achieved through these techniques, would open up new application areas such as industrial control systems, avionics, robotics and financial trading systems to the use of Web services as a middleware platform.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Apache Software Foundation: Apache Synapse. http://synapse.apache.org/ (2008). Accessed 16 April 2011

  2. Apache Software Foundation: Apache Axis2. http://ws.apache.org/axis2/ (2009). Accessed 16 April 2011

  3. Arnold, K., Gosling, J., Holmes, D.: The Java Programming Language. Addison-Wesley Professional, Reading (2006)

    Google Scholar 

  4. Cao, J., Zhao, H., Li, M., Wang, J.: A dynamically self-configurable service process engine. World Wide Web 13, 475–495 (2010)

    Article  Google Scholar 

  5. Eggert, L., Heidemann, J.: Application-level differentiated services for Web servers. World Wide Web 2, 133–142 (1999)

    Article  Google Scholar 

  6. Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns: Elements of Reusable Object-Oriented Design. Addison-Wesley (1995)

  7. Gamini Abhaya, V., Tari, Z., Bertok, P.: Achieving predictability and service differentiation in Web services. In: ICSOC-ServiceWave ’09: Proceedings of the 7th International Conference on Service-Oriented Computing, pp. 364–372. Springer, Berlin (2009)

    Google Scholar 

  8. Gamini Abhaya, V., Tari, Z., Bertok, P.: Using real-time scheduling principles in Web service clusters to achieve predictability of service execution. In: Proceedings of 8th International Conference on Service-Oriented Computing: ICSOC 2010, San Francisco, CA, USA, pp. 197–212. Springer, Berlin (2010)

    Google Scholar 

  9. 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 Trans. Serv. Comput. 2(1), 3–16 (2009)

    Article  Google Scholar 

  10. Gartner: SOA is evolving beyond its traditional roots. http://www.gartner.com/it/page.jsp?id=927612 (2009). Accessed 16 April 2011

  11. Gartner and Forrester: Use of Web services skyrocketing. http://utilitycomputing.com/news/404.asp (2003). Accessed 16 April 2011

  12. Gmach, D., Krompass, S., Scholz, A., Wimmer, M., Kemper, A.: Adaptive quality of service management for enterprise services. ACM Trans. Web (TWEB) 2(1), 1–46 (2008)

    Article  Google Scholar 

  13. 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)

  14. Helander, J., Sigurdsson, S.: Self-tuning planned actions time to make real-time SOAP real. In: Eighth IEEE International Symposium on Object-Oriented Real-Time Distributed Computing, (ISORC), pp. 80–89 (2005)

  15. Kihl, M., Robertson, A., Andersson, M., Wittenmark, B.: Control-theoretic analysis of admission control mechanisms for Web server systems. World Wide Web 11, 93–116 (2008)

    Article  Google Scholar 

  16. Microsoft: Windows communications foundation. http://msdn.microsoft.com/library/ee958158.aspx. Accessed 16 April 2011

  17. Pacifici, G., Spreitzer, M., Tantawi, A., Youssef, A.: Performance management for cluster-based Web services. IEEE J. Sel. Areas Commun. 23(12), 2333–2343 (2005)

    Article  Google Scholar 

  18. Ran, S.: A model for Web services discovery with QoS. In: ACM SIGecom Exchanges, pp. 1–10 (2003)

  19. Sharma, A., Adarkar, H., Sengupta, S.: Managing QoS through prioritization in Web services. In: Web Information Systems Engineering Workshops, Proceedings, pp. 140–148 (2003)

  20. Stankovic, J., Rajkumar, R.: Real-time operating systems. In: Real-Time Systems, pp. 237–253 (2004)

  21. Stankovic, J.A., Spuri, M., Ramamritham, K., Buttazzo, G.C.: Deadline Scheduling for Real-Time Systems: EDF and Related Algorithms. Kluwer Academic, Norwell (1998)

    Book  MATH  Google Scholar 

  22. Sun Microsystems: Glassfish application server—features. http://www.oracle.com/us/products/middleware/application-server/oracle-glassfish-server/index.html (2009). Accessed 16 April 2011

  23. Sun Microsystems: Sun Java real-time system. http://java.sun.com/javase/technologies/realtime/ (2009). Accessed 16 April 2011

  24. Sun Microsystems: Thread Scheduling Visualizer 2.0—Sun Java RealTime Systems 2.2. http://java.sun.com/javase/technologies/realtime/reference/TSV/JavaRTS-TSV.html (2009). Accessed 16 April 2011

  25. Tian, M., Gramm, A., Naumowicz, T., Ritter, H., Freie, J.: A concept for QoS integration in Web services. In: Web Information Systems Engineering Workshops, Proceedings, pp.  149–155 (2003)

  26. Tien, C.M., Lee, C.J., Cheng, P.W., Lin, Y.D.: SOAP request scheduling for differentiated quality of service. In: Web Information Systems Engineering—WISE Workshops, pp. 63–72. Springer, Berlin (2005)

    Chapter  Google Scholar 

  27. Wang, A.J., Baglodi, V.: Evaluation of Java virtual machines for real-time applications. Journal of Computing Sciences in Small Colleges 17(4), 164–178 (2002)

    Google Scholar 

  28. Zeng, L., Benatallah, B., Ngu, A., Dumas, M., Kalagnanam, J., Chang, H., Center, I., Yorktown Heights, N.: QoS-aware middleware for Web services composition. IEEE Trans. Softw. Eng. 30(5), 311–327 (2004)

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Vidura Gamini Abhaya.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Gamini Abhaya, V., Tari, Z. & Bertok, P. Building Web services middleware with predictable execution times. World Wide Web 15, 685–744 (2012). https://doi.org/10.1007/s11280-012-0160-x

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11280-012-0160-x

Keywords

Navigation