University Of Paderborn Software Engineering Group Prof. Dr. W. Schäfer An Architecture for An Architecture for Configurable Dependability of Configurable Dependability of Application Services Application Services Matthias Tichy mtt@uni-paderborn.de Software Engineering Group University Of Paderborn
University Of Paderborn Contents Software Engineering Group Prof. Dr. W. Schäfer • Introduction • Architectural Principles for Dependability • Architecture • Improving Availability • Improving Reliability • Conclusion & Future Work 2
University Of Paderborn Introduction Software Engineering Group Prof. Dr. W. Schäfer • Dependability – Availability – Reliability – Safety – Security network vivian uther <<deploy>> <<deploy>> MathInterface ChartInterface Chart Math 3
University Of Paderborn Architectural Principles Software Engineering Group Prof. Dr. W. Schäfer • Service Registry Provides support for dynamic online binding and spontanous networking. • Leasing The leasing principle extends the allocation of resources with time.The lease represents a period of time during which the resource is offered. • Proxy A proxy is the placeholder for another object. • Smart Proxy Smarter version of the proxy, may be a placeholder for more than one object. • Redundancy Redundant services prevent a single-point-of-failure. • Replication Replicating is the process of maintaining multiple copies of the same entity at different locations. 4
University Of Paderborn Architecture Software Engineering Group Prof. Dr. W. Schäfer • Architecture provides means to achieve high availability for application services • Reliability is highly application specific : Monitor • Every infrastructure : Node Responsibility Storage service is executed on a.1: Start a.2: Create every node : Service : Monitor Description – Redundancy of services Storage – Replication of data b: Check – Service registry : Jini Lookup : Application Service a.3: Register Data access 5
Architecture – Monitor University Of Paderborn Software Engineering Group (Availability) Prof. Dr. W. Schäfer • For each application service instance, one monitor supervises its execution � configurable degree of availability • Coordination by monitor responsibilities (registry + leasing) service lease s. lease responsibility lease t node failure new resp. monitor service restarted 6
University Of Paderborn Reliability Software Engineering Group Prof. Dr. W. Schäfer • Highly application specific • 3 types: – Stateless session service • No problem, just use another service instance – Stateful session service • Relevant history must be replayed on another service instance – Entity service • Replicate data and use an appropriate consistency model 7
Architecture – Responsibility University Of Paderborn Software Engineering Group Storage (Reliability) Prof. Dr. W. Schäfer • Example for an entity service • Smart Proxy communicates via Multicast messages • Decentral majority voting • Redundancy, replication, smart proxy Messages: Messages: Messages: Messages: 1: getData() 1: getData() 1: getData() 1: getData() Voting Voting Voting Voting 2: „Mon2“ 2: „Mon2“ 2: „Mon2“ 2: „Mon2“ „Mon2“ „Mon2“ „Mon2“ „Mon2“ 3: „Mon2“ 3: „Mon2“ 3: „Mon2“ 3: „Mon2“ 4: „Mon5“ 4: „Mon5“ 4: „Mon5“ 4: „Mon5“ <<timeout>> <<timeout>> <<timeout>> <<timeout>> Resp. Resp. Resp. Resp. Smart Proxy „Mon2“ „Mon2“ „Mon2“ „Mon5“ 1: getData(„Chart“) 3: „Mon2“ 2: „Mon2“ 4: „Mon5“ LAN 8
University Of Paderborn Conclusion & Future Work Software Engineering Group Prof. Dr. W. Schäfer • Architectural principles for dependability • Architecture based on these principles • Provides means to achieve a configurable degree of availability • Example for providing application specific reliability • Implementation based on Jini • Seamless UML support for service-based architectures • Runtime measurements to adapt architecture parameters • Complex embedded and real-time systems 9
University Of Paderborn Software Engineering Group Prof. Dr. W. Schäfer Thank you for your Thank you for your attention! attention! Questions? Questions?
Service Description Storage University Of Paderborn Software Engineering Group (Reliability) Prof. Dr. W. Schäfer • Redundant and distributed storage of the service descriptions • Strong consistency (sequentiell) • Probability: P(Read) >> P(Write) • Algorithm „Weighted Voting“ • Implemented in a smart proxy 11
Recommend
More recommend