Verteilte Anwendungen (ĐApps)
Was sind verteilte Anwendungen (ĐApps)
Verteilte Anwendungen (ĐApps) sind Softwareanwendungen, die hauptsächlich auf Cloud-Computing Plattformen gespeichert und ausgeführt werden und auf mehreren Systemen gleichzeitig ausgeführt werden. Diese verteilten Systeme arbeiten im selben Netzwerk und kommunizieren miteinander, um eine bestimmte Aufgabe oder einen bestimmten Befehl auszuführen – im Gegensatz zu einer herkömmlichen App, die ein dediziertes System verwendet, um eine zugewiesene Aufgabe zu erfüllen.
Die zentralen Thesen
- Eine verteilte App, abgekürzt als „ĐApp“, ist eine Software, die in einem verteilten oder Cloud-Netzwerk und nicht auf einem einzelnen dedizierten Server ausgeführt wird.
- Durch die Verteilung der Rechenleistung und des Speicherplatzes auf viele Geräte werden ĐApps dezentralisiert, was sie widerstandsfähiger gegen Angriffe macht, da es keinen Single Point of Failure gibt, der untergraben werden kann.
- Blockchain-basierte Systeme waren die Plattformen, auf denen viele ĐApps erstellt und bereitgestellt wurden. ĐApps können jedoch auch auf Cloud-Plattformen oder anderen Netzwerkarchitekturen ausgeführt werden.
Grundlegendes zu verteilten Anwendungen (ĐApps)
Eine ĐApp ermöglicht es Benutzern eines Netzwerks, über einen Server zusammenzuarbeiten und Ideen auszutauschen, Aufgaben zu koordinieren, auf Informationen zuzugreifen und Apps auszutauschen. Sie werden hauptsächlich in Client-Server-Netzwerken verwendet, in denen der Computer des Benutzers auf Informationen vom Server oder Cloud-Computing-Server zugreift.
Die verschiedenen Computersysteme, die über das Netzwerk verteilt wurden, haben normalerweise ähnliche oder unterschiedliche Aufgaben. In einer E-Commerce Plattform kann beispielsweise jeder der Computer für bestimmte Aufgaben verantwortlich sein, wie zum Beispiel:
- Senden und Empfangen von E-Mails zu Sonderangeboten an bestehende Kunden.
- Erstellen einer Liste von Kunden und ihrer Kaufhistorie, um Produkte besser auf sie auszurichten.
- Aktualisierung der Kundenliste mit Neukunden, die sich beim Online-Markt registriert haben.
- Akzeptieren von Produktbewertungen von jedem Kunden für zukünftige Produktentscheidungen.
- Akzeptieren verschiedener Zahlungsmethoden an der Kasse.
- Fragen der Kunden online beantworten, sei es als Mensch hinter dem Computer oder als Chatbot.
Jede dieser Aufgaben wird von einem oder mehreren Systemen im Netzwerk ausgeführt, aber alle Systeme kommunizieren miteinander, um sicherzustellen, dass der Kunde das für ihn vorteilhafte Produkt kauft und erhält.
Die beliebte Musik-Streaming-Plattform Spotify ist eine dezentrale App, die den Speicher und die Rechenleistung des Benutzers nutzt, um effizient und mit geringer Latenz zu arbeiten.
Beispiel für verteilte Anwendungen (ĐApps)
Unternehmen der Finanzbranche suchen ständig nach neuen Wegen, ĐApps über die Transparenz der Geschäftstätigkeit des Unternehmens zu verbessern, um die strengen Anforderungen der Finanzaufsichtsbehörden zu erfüllen.
Andere Gründe, warum ein Unternehmen im Finanzsektor wünschen kann ĐApps integrieren umfassen die Anzahl von Vermittlern in einer Finanztransaktion beteiligt zu reduzieren, Kunden Zugang zu bieten cryptocurrencies, und die Schaffung von Zugang zu Gruppen wie Peer-to-Peer (P2P) Kreditgruppen. ĐApps können auch verwendet werden, um die Überprüfung historischer Transaktionen zu verbessern, AML- und KYC-Prozesse zu vereinfachen, Handelsfinanzierungen und Lieferkettenfinanzierungen zu verbessern und Open Banking zu ermöglichen.
Blockchains und verteilte Anwendungen (ĐApps)
In der Kryptoökonomie verwendet die von den meisten Kryptowährungen verwendete Blockchain ĐApps, um einen effizienten digitalen Marktplatz aufrechtzuerhalten. Anstelle des herkömmlichen Client-Server-Netzwerks, das von den meisten zentralisierten Organisationen verwendet wird, laufen Blockchains in einem Peer-to-Peer-Netzwerk, in dem zwischen zwei Parteien durchgeführte Transaktionsinformationen aufgezeichnet und über mehrere Computer im Netzwerk geteilt werden. Diese als Nodes bezeichneten Computer fungieren jeweils als Administrator auf den Bitcoin Märkten und treten dem Netzwerk freiwillig bei, um die Möglichkeit zu haben, Bitcoins als Belohnung zu erhalten.
Jeder Knoten verfügt über eine Kopie einer Originaltransaktion, die kontinuierlich vom Netzwerk abgeglichen wird. Welcher Eintrag auch immer Knoten A in seinem Datensatz für eine Bitcoin-Transaktion zwischen Jane und John hat, kann sich nicht von den Knoten B, C, D, E und F unterscheiden. Diese Methode zur Überprüfung jeder Transaktion durch mehrere Knoten wird als verteilte Ledger bezeichnet.
Da eine Version von Ereignissen mit verschiedenen Computern überprüfbar sein kann, müsste ein Hacker in alle Systeme an verschiedenen geografischen Standorten eindringen, um die Transaktion zu optimieren und die aufgezeichneten Daten zu beschädigen. Dieses Kunststück ist unmöglich und macht die Bitcoin-Blockchain transparent und unbestechlich.
Durch das Speichern von Informationsblöcken über verschiedene Knoten in einem Blockchain-Netzwerk kann die Blockchain auch nicht durch den Ausfall eines Systems zerstört werden. Wenn ein Computer oder ein System ausfällt, fungieren die anderen Systeme als Backups und laufen unabhängig vom ausgefallenen System weiter. Sobald alle aktiven Knoten eine Transaktion erhalten und als gültig verifiziert haben, wird der Block (dh die Transaktion) der Kette – dem Hauptbuch – für den öffentlichen Zugriff hinzugefügt. Die Funktionsfähigkeit aller Knoten, auch wenn ein oder zwei Knoten aus dem Netzwerk ausfallen, stellt sicher, dass die Benutzer ihre Transaktionen ständig unterbrechungsfrei und zeitnah aufzeichnen und bestätigen.