An Architectural Approach for Improving Availability in Web Services Evangelos Parchas and Rogério de Lemos Computing Laboratory - University of Kent at Canterbury, UK � Motivation � Architectural pattern � Implementation and results � Concluding and future work Rogério de Lemos ICSE WADS 2004 – May 2004 – 1
Motivation � Dependable systems that are built from existing components/systems/services; � existing systems cannot be trusted, they are not under the control of the architect; � the system has to be protected against faults; � A good architecture improves the handling of faults: � error confinement, and reduction of system complexity; � Application of traditional fault tolerant techniques: � Components – self-checking and comparison for error detection and confinement ; � System – system dynamic reconfiguration for fault handling; Rogério de Lemos ICSE WADS 2004 – May 2004 – 2
Motivation � Not quite ‘Web services’: � HTML and text, but we are getting there; Rogério de Lemos ICSE WADS 2004 – May 2004 – 3
Architectural Solution For improving the reliability and availability of systems by using multiple sources of information: � Components implement crash-failure semantics; plus timing self-checks; � � System dynamic reconfiguration; Rogério de Lemos ICSE WADS 2004 – May 2004 – 4
Architectural Solution B r i d g e _ 1 i I n p u t C o m p a r a t o r B r i d g e _ 2 u t i I n p M a n a g e r i O u t p u t Failure assumptions: � Bridge: arbitrary failures; � Comparator: crash-failures; n failures for n+1 Bridges; � � Manager: does not fail; Rogério de Lemos ICSE WADS 2004 – May 2004 – 5
Architectural Solution B r i d g e _ 1 i I n p u t C o m p a r a t o r B r i d g e _ 2 u t i I n p M a n a g e r i O u t p u t Rogério de Lemos ICSE WADS 2004 – May 2004 – 6
Architectural Solution B r i d g e _ 1 i I n p u t C o m p a r a t o r B r i d g e _ 2 u t i I n p M a n a g e r i O u t p u t Rogério de Lemos ICSE WADS 2004 – May 2004 – 7
Architectural Solution B r i d g e _ 1 i I n p u t C o m p a r a t o r B r i d g e _ 2 u t i I n p M a n a g e r i O u t p u t B r i d g e _ 3 i I n p u t C o m p a r a t o r B g e _ 4 r i d i I n p u t Rogério de Lemos ICSE WADS 2004 – May 2004 – 8
N Self-Checking Programming NSCP is a design diverse technique that uses redundancies to check its own behaviour during execution. Variant1 NSCP Comparator 12 Variant2 Comparator Final iInput iOutput Variant3 Comparator 34 Variant4 Rogério de Lemos ICSE WADS 2004 – May 2004 – 9
Case Study: Stock Quotes Implemented in Jini : set of APIs and network protocols that help in building and deploying distributed systems; Bridge StockQuotes Yahoo Yahoo iWeb Comparator Bridge StockQuotes Lycos Lycos iWeb Client Manager iManager Bridge StockQuotes Quicken Quicken iWeb Comparator Bridge StockQuotes MSN MSN Lookup iWeb Services Rogério de Lemos ICSE WADS 2004 – May 2004 – 10
Implementation Analysis System statistics: Reliability and availability of the total restoration time (ms) services and final system Reliability Availability Average time (failure rate) (ms) Yahoo 4.2 f/p 0.999 Failure detection 80 Lycos 81.3 f/p 0.983 Reconfiguration 2 Quicken 8.4 f/p 0.998 Stream restoration 123 MSN 6.9 f/p 0.998 System Total restoration 205 0.6 f/p 0.999 Service Rogério de Lemos ICSE WADS 2004 – May 2004 – 11
Concluding Remarks � Architectural solution for improving the reliability and availability of Web services: � it might be naïve but it does the job; its feasibility was shown in the context of stock quote � information; � Current and future work: � apply the architectural solution in the context of Web services; � special attention will be given to the Bridge component for the purpose of fault tolerance: addition of the non-functional interface; � � automatic generation of an implementation; Rogério de Lemos ICSE WADS 2004 – May 2004 – 12
Recommend
More recommend