Skip to main content

Architecting Web Services Applications for Improving Availability

  • Conference paper
Architecting Dependable Systems III

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 3549))

Abstract

In this paper, we address the problem of improving the availability and correctness of Web Services. An architectural approach is proposed that incorporates fault-tolerant techniques, such as, self-checking, comparison, and dynamic reconfiguration. The first two techniques are associated with the detection and handling of faults at the component level, while the latter is associated with the system. To demonstrate its applicability, a distributed application was designed and implemented that addresses the problem of obtaining dependable stock quotes from the Web. The system was implemented using Web Services core technologies, and preliminary measurements confirmed the improved availability of the whole application.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Avizienis: The N-Version Approach to Fault Tolerant Software. IEEE Transactions on Software Engineering 11(2), 1491–1501 (1995)

    Article  Google Scholar 

  2. Avizienis, Laptrie, J.-C., Randell, B., Landwehr, C.: Basic Concepts and Taxonomy of Dependable and Secure Computing. IEEE Transactions on Dependable and Secure Computing 1(1), 11–33 (2004)

    Google Scholar 

  3. Apte, N., Mehta, T.: UDDI: Building Registry-Based Web Services Solutions. Prentice Hall, Englewood Cliffs (2003)

    Google Scholar 

  4. Candea, G., Brown, A.B., Fox, A., Patterson, D.: Recovery-Oriented Computing: Building Multitier Dependability. Computer 37(11), 60–67 (2004)

    Article  Google Scholar 

  5. Candea, G., Fox, A.: Crash-Only Software. In: Proceedings of the 9th Workshop on Hot Topics in Operating Systems (HotOS-IX) (May 2003)

    Google Scholar 

  6. Chappell, D.A., Jewell, T.: Java Web Services. O’Reilly, Sebastopol (2002)

    Google Scholar 

  7. Defago, X., Schiper, A.: Specification of Replication Techniques, Semi-Passive Replication, and Lazy Consensus. Research Report KS-RR-2002-001, JAIST, Ishikawa, Japan (February 2002)

    Google Scholar 

  8. DeLine, R.: A Catalogue of Techniques for Resolving Packaging Mismatch. In: Proceedings of the 5th Symposium on Software Reusability (SSR 1999), Los Angeles, CA, pp. 44–53 (May 1999)

    Google Scholar 

  9. DurĂŁes, J., Madeira, H.: Web-server Availability from the End-user Viewpoint: a Comparative Study (Fast Abstract). In: IEEE/IFIP International Conference on Dependable Systems and Networks (DSN 2004), Florence, Italy (June 2004)

    Google Scholar 

  10. DurĂŁes, J., Vieira, M., Madeira, H.: Dependability Benchmarking of Web-Servers. In: The 23rd International Conference of Computer Safety, Reliability and Security (SAFECOMP 2004), Potsdam, Germany (September 2004)

    Google Scholar 

  11. Garlan, D., Cheng, S.-W., Kompanek, A.J.: Reconciling the Needs of Architectural Description with Object-Modeling Notations. Science of Computer Programming Journal (Special UML Edition), Elsevier Science (2001)

    Google Scholar 

  12. de Castro Guerra, P.A., Rubira, C.M.F., Romanovsky, A., de Lemos, R.: A Dependable Architecture for COTS-Based Software Systems using Protective Wrappers. In: de Lemos, R., Gacek, C., Romanovsky, A. (eds.) Architecting Dependable Systems II. LNCS, vol. 3069, pp. 144–166. Springer, Berlin (2004)

    Chapter  Google Scholar 

  13. Jini TM Architecture Specification Version 1.2, Sun Microsystems (December 2001)

    Google Scholar 

  14. Jones, B.R.: Dependability – the Role of Structure (2004) (Manuscript in preparation)

    Google Scholar 

  15. Kumagai, J.: London Exchange Vanishes for 8 Hours. IEEE Spectrum, 30–32 (June 2000)

    Google Scholar 

  16. Laprie, J.-C., et al.: Hardware and Software Fault Tolerance: Definition and Analysis of Architectural Solutions. In: Proceedings of the 17th International Symposium on Fault Tolerant Computer Systems (FTCS-17), Pittsburgh, PA, pp. 116–121 (1987)

    Google Scholar 

  17. Ledru, P.: Smart Proxies for Jini Services. ACM SIGPLAN Notices 37, 57–61 (2002)

    Article  Google Scholar 

  18. Merzbacher, M., Patterson, D.: Measuring End-User Availability on the Web: Practical Experience. In: Proceedings of the International Performance and Dependability Symposium, Washington DC, USA (June 2002)

    Google Scholar 

  19. Monge, R., Alves, C., Vallecillo, A.: A Graphical Representation of COTS-based Software Architectures. In: Proceedings. of IDEAS 2002, La Habana, Cuba, April 2002, pp. 126–137 (2002)

    Google Scholar 

  20. Monroe, R.T., Kompanek, A., Melton, R., Garlan, D.: Architectural Styles, Design Patterns, and Objects. IEEE Software 14(1), 43–52 (1997)

    Article  Google Scholar 

  21. Newcomer, E.: Understanding Web Services. Addison-Wesley, Reading (2002)

    Google Scholar 

  22. Parchas, E., de Lemos, R.: An Architectural Approach for Improving Availability in Web Services. In: Proceedings of ICSE 2004 Workshop on Architecting Dependable Systems (WADS), Edinburgh, Scotland, UK (May 2004)

    Google Scholar 

  23. Pflanz, M.: On-line Error Detection and Fast Recover Techniques for Dependable Embedded Processors. LNCS, vol. 2270. Springer, Berlin (2002)

    Book  MATH  Google Scholar 

  24. Powell: Distributed Fault Tolerance: Lessons from Delta-4. IEEE Micro, 42–43 (February 1994)

    Google Scholar 

  25. Rakic, M., Medvidovic, N.: Increasing the Confidence in Off-the-Shelf Components: A Software Connector-based Approach. In: Proceedings of the 2001 Symposium on Software Reusability (SSR 2001), May 2001, pp. 11–18 (2001)

    Google Scholar 

  26. Randell: System Structure for Software Fault Tolerance. IEEE Transactions on Software Engineering SE 1(2), 220–232 (1975)

    Google Scholar 

  27. Rubira, M.F., de Lemos, R., Ferreira, G.R.M., Castor Filho, F.: Exception Handling in the Development of Dependable Component-Based Systems. Software-Practice and Experience 35(3), 195–236 (2005)

    Article  Google Scholar 

  28. Shaw, M.: Moving from Qualities to Architecture: Architecture Styles. In: Bass, L., Clements, P., Kazman, R. (eds.) Software Architecture in Practice, pp. 93–122. Addison-Wesley, Reading (1998)

    Google Scholar 

  29. Schlichting, R.D., Schneider, F.B.: Fail-Stop Processors: An Approach to Designing Fault-Tolerant Computing Systems. ACM Transactions on Computer Systems 1(3), 222–238 (1983)

    Article  Google Scholar 

  30. Schneider, F.B.: Byzantine Generals in Action: Implementing Fail-Stop Processors. ACM Transactions on Computer Systems 2(2), 145–154 (1984)

    Article  Google Scholar 

  31. Tichy, M., Giese, H.: An Architecture for Configurable Dependability of Application Services. In: de Lemos, R., Gacek, C., Romanovsky, A. (eds.) Architecting Dependable Systems II. LNCS, vol. 3069, pp. 25–50. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

  32. UDDI4J. IBM UDDI4J Project. IBM (September 2004), http://www-124.ibm.com/developerworks/oss/uddi4j/

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2005 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

de Lemos, R. (2005). Architecting Web Services Applications for Improving Availability. In: de Lemos, R., Gacek, C., Romanovsky, A. (eds) Architecting Dependable Systems III. Lecture Notes in Computer Science, vol 3549. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11556169_4

Download citation

  • DOI: https://doi.org/10.1007/11556169_4

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-28968-5

  • Online ISBN: 978-3-540-31648-0

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics