verteilte Systeme
verteilte objektorientierte Systeme
1. Kommunikation
2. Ausfall eines Rechners darf das verteilte System nicht belasten
3. Nicht jeder Rechner kennt jeden - WWW wächst kontinuierlich
Kommunikationsart: synchron/asynchron
Synchron: A und B, können nur kommunizieren, wenn beide zusammen passen - Rendevouz
Asynchron: A führt Kommunikation aus und macht danach weiter
Kommunikationsmittel:
1. Speicher
2. Nachrichten: Durch Netzwerk
3. Entfernter Prozedur oder Methodenaufruf
4. Speziell
Organisation der Kommunikation:
Client-Server-Architektur
Request-Broker-Architektur: Request Broker stehen zwischen Client und Server und leiten Anfrage von Client an entsprechenden Server weiter
Homogene Systeme
...
Sockets
Nicht triviale Tätigkeiten:
- Zerteilen der Daten
- Einpacken der Daten in Pakete mit Adressen, ...
- Eintreffende Pakete auspacken
- Reihenfolge sicherstellen
- Fehlende Pakete nachfordern
- Pakete am Zielort wieder zusammensetzen
Ports
ServerSocket serversocket = new ServerSocket (Portnummer);
while (true) {
Socket socket = serversocket.accept();
//
socket.close ();
}
import java.io.*
import java.net.ServerSocket;
import java.net.Socket;
ServerSocket;
Socket;
.accept ();
read ();
write ();
BufferedOutputStream;
BufferedInputStream;
.close ();
.flush ();
Client:
Socket sock = new Socket (host, SERVER_PORT);