Download presentation
Presentation is loading. Please wait.
Published byScarlett Pope Modified over 9 years ago
1
Ludger Fiege, fiege@acm.org TU Darmstadt, Germany Slide 1 A Modular Approach to Build Structured Event-based Systems Ludger Fiege Dep. of Computer Science TU Darmstadt, Germany fiege@acm.org
2
Ludger Fiege, fiege@acm.org TU Darmstadt, Germany Slide 2 Agenda n Publish/subscribe and Event-based systems n Current deficiencies and a solution… n Scoping constrains visibility n Event mappings cope with heterogeneity n Modular implementation n Conclusion
3
Ludger Fiege, fiege@acm.org TU Darmstadt, Germany Slide 3 Publish/Subscribe Systems aka Event-based Systems n Set of clients –Communicate with notificatitons –Producers publish notifications –Consumers subscribe to kinds of notifications n Notification service transmits notifications P/S n n n Producer 1. 2. Consumer subscribed to “/Weather/London” Notification “/Weather/London” Consumer subscribed “/Weather/Berlin” “/Weather/*”
4
Ludger Fiege, fiege@acm.org TU Darmstadt, Germany Slide 4 Event-based Systems n Pub/Sub and messaging are implementation techniques n Characteristics of Event-based cooperation: –Initiator of communication: Producer –Addressee: Not specified No explicit dependencies, loose coupling
5
Ludger Fiege, fiege@acm.org TU Darmstadt, Germany Slide 5 Simple Event-based System n Black box specification –Interface description n Interface operations: –Sub(X,F), Unsub(X,F) –Pub(Y,n) –Notify(X,n) XY Notification Service Clients n F
6
Ludger Fiege, fiege@acm.org TU Darmstadt, Germany Slide 6 Simple Event-based System Specification n Based on LTL : –Safety : Notify(X,n) previously [Pub(Y,n) Sub(X,F)], n F –Liveness: Sub(X,F) eventually (Pub(Y,n) n F Notify(X,n))
7
Ludger Fiege, fiege@acm.org TU Darmstadt, Germany Slide 7 Simple Event-based System Possible Implementation n Implementation: –Network of brokers –Flooding or content-based filtering, etc. Notification Service
8
Ludger Fiege, fiege@acm.org TU Darmstadt, Germany Slide 8 Deficiencies of Event-based Systems n Concentration on efficiency, but… n Complexity of large system design and administration disregarded n Flat address space n No information hiding Lacking module concept Side effects !
9
Ludger Fiege, fiege@acm.org TU Darmstadt, Germany Slide 9 Scopes n Scopes constrain the visibility of notifications –External control of delivery destinations –Visibility as first-class concept Structure not only induced by namespaces or filters Clients are not aware of the scoping structure n n X F Scope 1 Y F Scope 2
10
Ludger Fiege, fiege@acm.org TU Darmstadt, Germany Slide 10 n Clients and scopes are arranged in a DAG n Visibility: v(X,Y) X=Y v(Y,X) X‘ super(X): v(X‘,Y) n v(1,2) v(1,3) v(3,4) n Visibility roots determine recipients v(X,Y) Roots(X) Roots(Y) {} Scope Graphs 314 2 Vis. roots n n n n n n
11
Ludger Fiege, fiege@acm.org TU Darmstadt, Germany Slide 11 Event System with Scopes n Safety Notify(X,n) prev. Pub(Y,n) Sub(X,F) v(X,Y), n F n Liveness Sub(X,F) [v(X,Y) (Pub(Y,n) n F Notify(X,n))]
12
Ludger Fiege, fiege@acm.org TU Darmstadt, Germany Slide 12 Event System with Scopes Implementation n Build on top of a simple system –Client code –Scoped system API n Manages list of vis. roots n Add list of vis. roots to notifications and filters –Simple system API Simple system Scoped system
13
Ludger Fiege, fiege@acm.org TU Darmstadt, Germany Slide 13 Event Mappings n Event mappings –Discard or transform events at scope boundaries –Can be bound to any edge in the scope graph n Scope interfaces –Map notification to –Constrain Sub() and Pub() of scopes n Heterogeneous environments –Varying event syntax and semantics –Internal vs. external representations
14
Ludger Fiege, fiege@acm.org TU Darmstadt, Germany Slide 14 Scope Interface Example n Assume clients 2,3,4 subscribed to “n” n Visibility is refined: e.g. v(1,4) 3 12 n n n nn n 3 4
15
Ludger Fiege, fiege@acm.org TU Darmstadt, Germany Slide 15 Heterogeneity Example 3 12 n n´ n n´ n n´ n
16
Ludger Fiege, fiege@acm.org TU Darmstadt, Germany Slide 16 Scoped System with Mappings n Implementation idea: –Graph transformation –Mapping clients 3 12 n n´ n n´ 3 12 n n´
17
Ludger Fiege, fiege@acm.org TU Darmstadt, Germany Slide 17 Contributions n Scoping in event-based systems –First-class structuring mechanism n Event mappings: Heterogeneity of –Application environment –Event service semantics / implementation n Modular implementation, modularity support n Formal specification of –Simple Publish/subscribe –scoping, mapping extensions
18
Ludger Fiege, fiege@acm.org TU Darmstadt, Germany Slide 18 Questions ? Ludger Fiege Dep. of Computer Science TU Darmstadt, Germany fiege@acm.org
19
Ludger Fiege, fiege@acm.org TU Darmstadt, Germany Slide 19 Cooperation Models n Cooperation: Establishing dependencies
20
Ludger Fiege, fiege@acm.org TU Darmstadt, Germany Slide 20 Visibility n Visibility fundamental question in all SW- systems n Coordination in P/S-systems (Admin) What are the consequences of changes to system configuration?
21
Ludger Fiege, fiege@acm.org TU Darmstadt, Germany Slide 21 Scopes n Idea: Scoping as concept n Structure not only induced by namespaces or filters n Explicitly supports Administrator n Structuring mechanism of applications –Simple, extensive –Support design and implementation n Orthogonal to subscriptions –Interest vs. Visibility
Similar presentations
© 2025 SlidePlayer.com Inc.
All rights reserved.