Architectures
Architectures
Architectural styles Software architectures Architectures versus middleware Self-management in distributed systems
1 / 26
Architectures Architectural styles Software architectures - - PowerPoint PPT Presentation
Architectures Architectures Architectural styles Software architectures Architectures versus middleware Self-management in distributed systems 1 / 26 Architectures Architectural styles Architectural styles Basic idea Organize into
Architectures
1 / 26
Architectures Architectural styles
Layer N Layer N-1 Layer 1 Layer 2 Request flow Response flow (a) (b) Object Object Object Object Object Method call
2 / 26
Architectures Architectural styles
(a) (b) Component Component Component Event bus Publish Publish Event delivery Component Component Data delivery Shared (persistent) data space
3 / 26
Architectures System Architectures
Client Request Reply Server Provide service Time Wait for result
4 / 26
Architectures System Architectures
5 / 26
Architectures System Architectures
5 / 26
Architectures System Architectures
Database with Web pages Query generator Ranking algorithm HTML generator User interface Keyword expression Database queries Web page titles with meta-information Ranked list
HTML page containing list Processing level User-interface level Data level
6 / 26
Architectures System Architectures
User interface User interface User interface Application User interface Application User interface Application Database Application Application Application Database Database Database Database Database User interface (a) (b) (c) (d) (e) Client machine Server machine
7 / 26
Architectures System Architectures
8 / 26
Architectures System Architectures
8 / 26
Architectures System Architectures
15 2 14 3 13 4 12 8 7 9 6 10 5 11 1 Actual node {2,3,4} {5,6,7} {8,9,10,11,12} {13,14,15} {0,1} Associated data keys
9 / 26
Architectures System Architectures
10 / 26
Architectures System Architectures
(0.2,0.8) (0.6,0.7) (0.9,0.9) (0.2,0.3) (0.7,0.2) (0.9,0.6)
(0,0) Keys associated with node at (0.6,0.7)
(0.2,0.8) (0.6,0.7) (0.9,0.9) (0.2,0.45) (0.7,0.2) (0.9,0.6) (0.2,0.15) (1,0) (0,1) (1,1)
Actual node
(a) (b)
11 / 26
Architectures System Architectures
12 / 26
Architectures System Architectures
Protocol for randomized view Protocol for specific
Random peer Links to randomly chosen other nodes Links to topology- specific other nodes Random
Structured
13 / 26
Architectures System Architectures
14 / 26
Architectures System Architectures
15 / 26
Architectures System Architectures
16 / 26
Architectures System Architectures
Superpeer Regular peer Superpeer network
17 / 26
Architectures System Architectures
Edge server Core Internet Enterprise network ISP ISP Client Content provider
18 / 26
Architectures System Architectures
Node 1 Node 2 Node N .torrent file for F A BitTorrent Web page List of nodes storing F Web server File server Tracker Client node K out of N nodes Lookup(F)
file server
tracker
19 / 26
Architectures Architectures versus Middleware
20 / 26
Architectures Architectures versus Middleware
Client application
B.do_something(value) invoke(B, &do_something, value) send([B, "do_something", value])
Request-level interceptor Message-level interceptor Object middleware Local OS Application stub To object B Nonintercepted call Intercepted call
21 / 26
Architectures Architectures versus Middleware
22 / 26
Architectures Architectures versus Middleware
22 / 26
Architectures Architectures versus Middleware
22 / 26
Architectures Architectures versus Middleware
22 / 26
Architectures Architectures versus Middleware
22 / 26
Architectures Self-management in Distributed Systems
23 / 26
Architectures Self-management in Distributed Systems
23 / 26
Architectures Self-management in Distributed Systems
Core of distributed system Metric estimation Analysis Adjustment measures +/- +/- +/- Reference input Initial configuration Uncontrollable parameters (disturbance / noise) Observed output Measured output Adjustment triggers Corrections
24 / 26
Architectures Self-management in Distributed Systems
25 / 26
Architectures Self-management in Distributed Systems
Replica server Core Internet Enterprise network ISP ISP Client Origin server Client Client
26 / 26