Was ist ein verteiltes System?
Um verteilte Systeme zu verstehen, müssen Sie hauptsächlich zwei Aspekte verstehen:
1. Ein verteiltes System muss ein System sein, das aus mehreren Knoten besteht.
Unter diesen beziehen sich Knoten auf Computerserver, und diese Knoten sind im Allgemeinen nicht isoliert, sondern miteinander verbunden.
2. Unsere Knoten werden auf diesen verbundenen Knoten bereitgestellt und die gegenseitigen Operationen werden koordiniert.
Für Benutzer ist ein verteiltes System nur ein Server, der die Dienste bereitstellt, die Benutzer benötigen. Tatsächlich handelt es sich bei diesen Diensten um ein verteiltes System, das aus vielen Servern dahinter besteht, sodass das System wie ein Supercomputer aussieht.
Taobao zum Beispiel wird von allen genutzt. Wenn wir über einen Browser auf die Taobao-Website zugreifen, steht hinter dieser Anfrage ein riesiges verteiltes System, das uns Dienste zur Verfügung stellt Einige sind für die Anforderungsverarbeitung verantwortlich, andere für die Speicherung und einige für die Berechnung. Am Ende koordinieren sie sich, um die Endergebnisse zurückzugeben und sie dem Benutzer zu präsentieren.
Die Hauptmerkmale der Verwendung verteilter Systeme sind:
1. Erhöhen Sie die Systemkapazität. Unser Geschäftsvolumen wird immer größer und um das wachsende Geschäftsvolumen bewältigen zu können, kann die Leistung einer Maschine nicht mehr den Anforderungen genügen. Wir benötigen mehrere Maschinen, um große Anwendungsszenarien zu bewältigen. Daher müssen wir das Geschäftssystem vertikal oder horizontal aufteilen und in eine verteilte Architektur umwandeln.
2. Erweitertes System ist verfügbar. Unser Geschäft wird immer kritischer und wir müssen die Verfügbarkeit der gesamten Systemarchitektur verbessern, was bedeutet, dass es keinen einzigen Fehlerpunkt in der Architektur geben darf. Auf diese Weise wird verhindert, dass das gesamte System aufgrund des Ausfalls einer Maschine nicht verfügbar ist. Daher ist es notwendig, das System durch eine verteilte Architektur zu redundanten, um einzelne Fehlerquellen zu beseitigen und dadurch die Systemverfügbarkeit zu verbessern.
3. Aufgrund der Modularität sind Systemmodule besser wiederverwendbar.
4. Da das Software-Servicemodul aufgeteilt ist, kann die Entwicklungs- und Release-Geschwindigkeit parallelisiert und beschleunigt werden.
5. Das System ist skalierbarer.
6. Der Prozess der Teamzusammenarbeit wird ebenfalls verbessert.
Es gibt drei Arten von verteilten Systemen:
1. Verteilte Verarbeitung, aber es gibt nur eine Gesamtdatenbank und keine lokale Datenbank.
2. Schichtverarbeitung, jede Schicht hat ihre eigene Datenbank.
3. Ein vollständig dezentralisiertes verteiltes Netzwerk ohne zentralen Kontrollteil, und es kann viele Arten des Kontakts zwischen Knoten geben, wie z. B. lose Verbindung, enge Verbindung, dynamische Verbindung, Verbindungen im Broadcast-Benachrichtigungsstil, usw.
Was ist eine verteilte JAVA-Anwendung?
Ein großes System ist oft in mehrere Subsysteme unterteilt. Ein Subsystem kann auf mehreren JVMs auf einer Maschine oder auf mehreren Maschinen bereitgestellt werden. Aber nicht jedes System ist unabhängig, nicht völlig unabhängig. Sie müssen miteinander kommunizieren und gemeinsam Geschäftsfunktionen umsetzen.
Kurz gesagt: Unter Verteilung versteht man die Verteilung der Back-End-Arbeit an mehrere Hosts über ein Computernetzwerk, wobei mehrere Hosts zusammenarbeiten, um die Arbeit abzuschließen.
Hauptwege zur Erreichung einer verteilten Implementierung
In verteilten Anwendungen verwendete Technologie: Netzwerkkommunikation, nachrichtenbasierte Kommunikation zwischen Systemen und Fernanruf-basierte Kommunikation zwischen Systemen.
Nachteil: Es erhöht die Komplexität der Technologie.
Bei der nachrichtenbasierten Systemkommunikationsmethode werden hauptsächlich Netzwerkprotokolle wie das TCP/IP-Protokoll verwendet.
Die Kommunikation zwischen Systemen erfordert auch Datenverarbeitung, wie z. B. synchrone E/A und asynchrone E/A.
Remote-Aufrufe realisieren die Kommunikation zwischen Systemen: Transparentes Aufrufen der Remote-Java-Implementierung durch Aufrufen der lokalen Java-Schnittstellenmethode. Die konkreten Details werden in einem Framework umgesetzt.
Viele Java-Schulungsvideos, alle auf der chinesischen PHP-Website, willkommen zum Online-Lernen!
Das obige ist der detaillierte Inhalt vonJava, was verteilt wird. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!