230 likes | 361 Views
A Software Architecture for Translucent Replication. Etienne Antoniutti Di Muro Università degli Studi di Trieste, Italy eantoniutti@units.it. 29th November, 2005 2nd Middleware Doctoral Symposium @ Middleware 2005 Conference, Grenoble, France.
E N D
A Software Architecture for Translucent Replication Etienne Antoniutti Di MuroUniversità degli Studi di Trieste, Italy eantoniutti@units.it 29th November, 2005 2nd Middleware Doctoral Symposium @ Middleware 2005 Conference, Grenoble, France
A Software Architecture for Translucent Replication : Etienne Antoniutti Di Muro Directions… • Arjuna Technologies Ltd.Newcastle upon Tyne, UK • Stuart Wheater (co-supervisor ) • Università degli Studi di Trieste • Etienne Antoniutti Di Muro • Prof. Alberto Bartoli (supervisor ) 2nd Middleware Doctoral Symposium @ Middleware 2005 Conference,Grenoble, France 29th November 2005 29th November, 2005 2nd Middleware Doctoral Symposium @ Middleware 2005 Conference, Grenoble, France 2/23
A Software Architecture for Translucent Replication : Etienne Antoniutti Di Muro Food for thought… >Background and motivations: > Middleware transparency, crisis and paradox < interlude: clustering and replication /> > Dependability vs. performance > Goal: Address dependability and performance conflicts >Proposal: Translucent replication: > top-down and bottom-up translucency models > application requirements > Evaluation: Translucent replication in a real case scenario < interlude: JMS clustering /> > JMS translucent replication > Summary and Conclusions 29th November, 2005 2nd Middleware Doctoral Symposium @ Middleware 2005 Conference, Grenoble, France 3/23
< < < distributed application(s) > > > Application(s) Application(s) MIDDLEWARE Domain Specific Services Domain Specific Services Common services Common Services Distribution Services Distribution Services Host-infrastructure Services Host-infrastructure Services operating system hardware System Platform System Platform network A Software Architecture for Translucent Replication : Etienne Antoniutti Di Muro Background and motivations: • Middleware: born TRANPARENT and HOMOGENEOUS … • to provide a common high-level environment to the components of a distributed system • to isolate applications form underlying hw/sw changes 29th November, 2005 2nd Middleware Doctoral Symposium @ Middleware 2005 Conference, Grenoble, France 4/23
A Software Architecture for Translucent Replication : Etienne Antoniutti Di Muro Background and motivations: • Middleware: …grown MONOLITHIC and HETEROGENEOUS • to achieve transparency • to accommodate application complexity, distribution models, (COTS) component reuse • Middleware: requires a partial redesign to match the exact application requirements: the middleware crisis • Middleware: faces an interoperability problem coming from middleware itself: the middleware paradox 29th November, 2005 2nd Middleware Doctoral Symposium @ Middleware 2005 Conference, Grenoble, France 5/23
Clients network A Software Architecture for Translucent Replication : Etienne Antoniutti Di Muro < interlude: clustering and replication > Service • Clustering : exploiting services using multiple physical machines w/ external appearance of one single highly capable server • performance • Replication : having a service replicated across multiple nodes ensures that another instance of the service exists if one replica crashes • service dependability, i.e. availability and reliability 29th November, 2005 2nd Middleware Doctoral Symposium @ Middleware 2005 Conference, Grenoble, France 6/23
Communication with other replicas Replication Algorithm ADAPT Framework Bean J2EE Server A Software Architecture for Translucent Replication : Etienne Antoniutti Di Muro • Clustering and Replication : a common requirement is replication transparency: neither clients nor applications should have to be aware of multiple physical data replicas • Example: • ADAPT (Middleware Technologies for Adaptive and Composable Distributed Components). EU contract no. IST-2001-37126 (2005) • no interaction between the replicated beans and the replication layer across the application/middleware boundary Application/middleware boundary 29th November, 2005 2nd Middleware Doctoral Symposium @ Middleware 2005 Conference, Grenoble, France 7/23
Replication Layer Interceptor Web Service Communication with other replicas Replication Algorithm Client Client Client Servlet Container A Software Architecture for Translucent Replication : Etienne Antoniutti Di Muro • > Example: • A Replication Framework for Program-to-Program Interaction across Unreliable Networks and its Implementation in a Servlet Container (2004) • no interaction between the replicated web service and the replication layer across the application/middleware boundary < interlude: clustering and replication /> application/middleware boundary 29th November, 2005 2nd Middleware Doctoral Symposium @ Middleware 2005 Conference, Grenoble, France 8/23
A Software Architecture for Translucent Replication : Etienne Antoniutti Di Muro Background and motivations: • Dependability and performance conflicts: • dependability: long-standing desirable property • efficient replication remains challenging • Maintaining high performance figures while ensuring strong consistency presents a tough contest • Replication transparency leads to under-utilization of resources with resulting poor application performance 29th November, 2005 2nd Middleware Doctoral Symposium @ Middleware 2005 Conference, Grenoble, France 9/23
A Software Architecture for Translucent Replication : Etienne Antoniutti Di Muro Goal: • Address system dependability and performance conflicts introducing Middleware Translucency • New software architectural model • Middleware layers interfaces and interactions are exposed to the system designers: • transparently to the application that want it • with the desired level of granularity to the applications that need it • Dependabilityandperformance conflicts have to become trade-offs • Trade-offs offer sets of solutions for the dependability/performance conflicts in the application design space 29th November, 2005 2nd Middleware Doctoral Symposium @ Middleware 2005 Conference, Grenoble, France 10/23
A Software Architecture for Translucent Replication : Etienne Antoniutti Di Muro Goal: • Novel translucency models: • top-down : upper layers provide information to lower layers about how they want their requests to be satisfied • bottom-up : lower layers provide information to upper layers about how they are performing their work and the computational environment, so that upper layers can adapt their behavior • Strong cross-layer interaction • Dynamical adaptability of middleware layers • Middleware high configurability to application requirements 29th November, 2005 2nd Middleware Doctoral Symposium @ Middleware 2005 Conference, Grenoble, France 11/23
> > > Application(s) Custom Service(s) Custom Service(s) Custom Service(s) Persistence Service Service State Communication Service System Platform Context Service network A Software Architecture for Translucent Replication : Etienne Antoniutti Di Muro Proposal: • Translucent Replication: • novel architecture for replicated infrastructures • decomposition of system level clustering requirements into lower level functional requirements • layered services realize functional requirements distributed application(s) REPLICATIONMIDDLEWARE operating system hardware 29th November, 2005 2nd Middleware Doctoral Symposium @ Middleware 2005 Conference, Grenoble, France 12/23
> Application(s) Custom Service(s) Custom Service(s) Custom Service(s) Persistence Service distributed application(s) > Service State < (GC) Communication Service < < KnowledgeRepository Context Service operating system hardware > System platform network A Software Architecture for Translucent Replication : Etienne Antoniutti Di Muro < top-down translucency model components Proposal: < bottom-up translucency model components < replicated data path • Translucent Replication: • Top-down and bottom-up model < top-down translucency model information path < bottom-up translucency model information path Single Replica application/middleware boundary API Semantic Rules REPLICATIONMIDDLEWARE > (Custom)Sensors 29th November, 2005 2nd Middleware Doctoral Symposium @ Middleware 2005 Conference, Grenoble, France 13/23
A Software Architecture for Translucent Replication : Etienne Antoniutti Di Muro Proposal: • Translucent Replication: reasoning on data semantics • generic way to implement smart replication middleware • provides the finest level of granularity for data handling • deals with replication of a wide range of entities: • i.e. raw and plain data / objects / components • no need to develop specific different patterns • Application requirements • formal description of operation and data semantics • messages sent to the middleware in a clear an fixedformat • Designers / Programmers • define rules to enable data semantics access • define sensors to monitor resources for application-specific adaptation 29th November, 2005 2nd Middleware Doctoral Symposium @ Middleware 2005 Conference, Grenoble, France 14/23
A Software Architecture for Translucent Replication : Etienne Antoniutti Di Muro Evaluation: • Translucent Replication model evaluation : tricky • put in numbers the advantages of solutions based on data semantics • flexibility and adaptability of a middleware architecture to specific application dependability solutions • different levels of granularity: explosion of the number of possible tunable parameters • solutions in a multidimensional space • providing translucent methodologies to application design is a trade-off itself • Model application evaluation • Real casescenario evaluation 29th November, 2005 2nd Middleware Doctoral Symposium @ Middleware 2005 Conference, Grenoble, France 15/23
Application Data < Persistence Service Service State (GC) Communication Service Context Service KnowledgeRepository network A Software Architecture for Translucent Replication : Etienne Antoniutti Di Muro < ‘opaque’ data class Evaluation: < data class • Model application evaluation application Data-specific API interaction < < Data-specific rules < Platform basic sensors System platform • Application throughput and latency comparison with a combination of different data 29th November, 2005 2nd Middleware Doctoral Symposium @ Middleware 2005 Conference, Grenoble, France 16/23
JMS Primary Server JMS Backup Server 1 JMS Backup Server 2 Cons. Prod. Shared persistent store A Software Architecture for Translucent Replication : Etienne Antoniutti Di Muro < interlude: JMS clustering> • JMS specs: put high demands on the message server • JMS specs: rich semantics, represent different types of messaging • JMS clustering model : shared persistent store • not continuous availability • idle servers: waste of hardware resources 29th November, 2005 2nd Middleware Doctoral Symposium @ Middleware 2005 Conference, Grenoble, France 17/23
< interlude: JMS clustering /> JMS Backup Server 1 JMS Backup Server 2 JMS Primary Server Back channel Cons. Prod. A Software Architecture for Translucent Replication : Etienne Antoniutti Di Muro • JMS clustering model: back channel • redundant networking • complex system architecture • waste of hardware resources 29th November, 2005 2nd Middleware Doctoral Symposium @ Middleware 2005 Conference, Grenoble, France 18/23
> A Software Architecture for Translucent Replication : Etienne Antoniutti Di Muro Evaluation: • JMS translucent clustering evaluation • JMS cluster based on group communication • provides high levels of data redundancy • translucency fits JMS rich semantics: • i.e. producers / consumers requests • i.e. persistent / non persistent messages • functional homogeneity JMS cluster design • ‘Blind’ replication test-bed (comparison baseline) • JMS Server clients throughput and latency for different levels of translucency • Scalability: destination, throughput, connections … 29th November, 2005 2nd Middleware Doctoral Symposium @ Middleware 2005 Conference, Grenoble, France 19/23
A Software Architecture for Translucent Replication : Etienne Antoniutti Di Muro Summary • Transparent middleware approach: important issue • Dependability vs. performance conflicts • Transparent replication • Translucent architecture: top-down and bottom-up models • Novel translucent replication architecture • Evaluation: model application and real case scenario 29th November, 2005 2nd Middleware Doctoral Symposium @ Middleware 2005 Conference, Grenoble, France 20/23
A Software Architecture for Translucent Replication : Etienne Antoniutti Di Muro Conclusions • Translucent middleware • offers appropriate programming interface elements to the application • pluggable modules (semanticrules) can be defined to expose the required level of granularity • pluggable sensor can be defined for encapsulating management resources • cross-layer interactions • access middleware machinery according to application-specific requirements • adjust the conflicts between dependability and performance turning them into trade-offs • provide sets of solutions for application dependabiliy/performance trade-offs 29th November, 2005 2nd Middleware Doctoral Symposium @ Middleware 2005 Conference, Grenoble, France 21/23
A Software Architecture for Translucent Replication : Etienne Antoniutti Di Muro Questions ? 29th November, 2005 2nd Middleware Doctoral Symposium @ Middleware 2005 Conference, Grenoble, France 22/23
A Software Architecture for Translucent Replication : Etienne Antoniutti Di Muro Thank you! 29th November, 2005 2nd Middleware Doctoral Symposium @ Middleware 2005 Conference, Grenoble, France 23/23