Java Reference
In-Depth Information
:Client
:Client-side Proxy
:Broker
:Server-side Proxy
:Server
operation()
callService()
packData()
handleRequest()
unpackData()
forwardRequest()
callService()
callService()
packData()
forwardResponse()
returnResponse()
unpackData()
forwardResponse()
handleRequest()
returnResponse()
forwardRequest()
callService()
Client-Prozess
Broker-Prozess
Server-Prozess
Bild 5-25 Sequenzdiagramm Broker-Muster auf einem Rechner
Der Client kennt nur den lokalen Stellvertreter des Servers - also den Client-side
Proxy. Anfragen des Clients werden vom Client-side Proxy entgegengenommen und in
eine Nachricht verpackt ( packData() ). Diese Nachricht wird dann zum Broker gesen-
det ( forwardRequest() ). Nachdem der Broker den passenden Server gefunden
hat, 89 sendet er die Nachricht ( handleRequest() ) an den serverseitigen Stellver-
treter des Clients, den Sever-side Proxy. Der Server-side Proxy nimmt die Nachricht
entgegen, entpackt sie ( unpackData() ) und ruft den gewünschten Service des
Servers auf ( callService() ). Der Server verarbeitet anschließend den Aufruf und
gibt das Ergebnis an den Aufrufer - den Server-side Proxy - zurück. Der Server-side
Proxy verpackt das Ergebnis wieder in eine Nachricht ( packData() ) und sendet die
Nachricht weiter an den Broker ( forwardResponse() ). Der Broker übergibt dann die
Antwortnachricht an den clientseitigen Stellvertreter des Servers, den Client-side Proxy
( returnResponse() ). Der Client-side Proxy entpackt die Daten ( unpackData() )
und übergibt dem Client das Ergebnis.
Verteilung der Komponenten auf mehrere Rechner
Wie bereits erwähnt wurde, zeigt das Bild 5-25 das Verhalten der Komponenten auf ei-
nem einzigen Rechner - also ohne dass die Komponenten auf mehrere Rechner ver-
teilt sind. In einem ersten Ansatz für die Verteilung könnte man die eingezeichneten
Grenzen zwischen den Betriebssystem-Prozessen als Rechnergrenzen sehen: Client
mit Client-side Proxy, Server mit Server-side Proxy und Broker jeweils auf einem ei-
genen Rechner. Damit hätten jetzt aber die Proxys neben der Serialisierung bzw. De-
serialisierung noch eine weitere Aufgabe, nämlich den Nachrichtentransport zum Bro-
ker. Außerdem müssten sie den physischen Ort des Brokers kennen. Damit könnte der
89 Die Aktivitäten des Brokers zur Bestimmung des passenden Servers werden der Übersicht halber
nicht in Bild 5-25 gezeigt.
Search WWH ::




Custom Search