MC714: Sistemas Distribu´ ıdos
- Prof. Lucas Wanner
MC714: Sistemas Distribu dos Prof. Lucas Wanner Instituto de - - PowerPoint PPT Presentation
MC714: Sistemas Distribu dos Prof. Lucas Wanner Instituto de Computac ao, Unicamp Aula 2: Arquiteturas de sistemas distribu dos Revision: Distribution Transparency Transp. Description Access Hide differences in data
Source: Maarten van Steen, Distributed Systems: Principles and Paradigms 2 / 30
Source: Maarten van Steen, Distributed Systems: Principles and Paradigms 3 / 30
Source: Maarten van Steen, Distributed Systems: Principles and Paradigms 4 / 30
Source: Maarten van Steen, Distributed Systems: Principles and Paradigms 5 / 30
1
2
3
4
5
6
7
8
6 / 30
7 / 30
1
2
3
4
5
8 / 30
4
1
2
5
1
2
9 / 30
Source: Maarten van Steen, Distributed Systems: Principles and Paradigms 10 / 30
Layer N Layer N-1 Layer 1 Layer 2 Request flow Response flow (a) (b) Object Object Object Object Object Method call
Source: Maarten van Steen, Distributed Systems: Principles and Paradigms 11 / 30
(a) (b) Component Component Component Event bus Publish Publish Event delivery Component Component Data delivery Shared (persistent) data space
Source: Maarten van Steen, Distributed Systems: Principles and Paradigms 12 / 30
Client Request Reply Server Provide service Time Wait for result
Source: Maarten van Steen, Distributed Systems: Principles and Paradigms 13 / 30
Source: Maarten van Steen, Distributed Systems: Principles and Paradigms 14 / 30
15 / 30
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
Source: Maarten van Steen, Distributed Systems: Principles and Paradigms 16 / 30
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
Source: Maarten van Steen, Distributed Systems: Principles and Paradigms 17 / 30
Source: Maarten van Steen, Distributed Systems: Principles and Paradigms 18 / 30
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
Source: Maarten van Steen, Distributed Systems: Principles and Paradigms 19 / 30
(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)
Source: Maarten van Steen, Distributed Systems: Principles and Paradigms 20 / 30
Source: Maarten van Steen, Distributed Systems: Principles and Paradigms 21 / 30
Superpeer Regular peer Superpeer network
Source: Maarten van Steen, Distributed Systems: Principles and Paradigms 22 / 30
Edge server Core Internet Enterprise network ISP ISP Client Content provider
Source: Maarten van Steen, Distributed Systems: Principles and Paradigms 23 / 30
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
Source: Maarten van Steen, Distributed Systems: Principles and Paradigms 24 / 30
Source: Maarten van Steen, Distributed Systems: Principles and Paradigms 25 / 30
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
Source: Maarten van Steen, Distributed Systems: Principles and Paradigms 26 / 30
Source: Maarten van Steen, Distributed Systems: Principles and Paradigms 27 / 30
Source: Maarten van Steen, Distributed Systems: Principles and Paradigms 28 / 30
Core of distributed system Metric estimation Analysis Adjustment measures +/- +/- +/- Reference input Initial configuration Uncontrollable parameters (disturbance / noise) Observed output Measured output Adjustment triggers Corrections
Source: Maarten van Steen, Distributed Systems: Principles and Paradigms 29 / 30
Source: Maarten van Steen, Distributed Systems: Principles and Paradigms 30 / 30
Replica server Core Internet Enterprise network ISP ISP Client Origin server Client Client
Source: Maarten van Steen, Distributed Systems: Principles and Paradigms 31 / 30