Öffentliche Testung einer Lösung fĂŒr Datenschutz und Skalierbarkeit in Ethereum auf Cloud-Plattformen

Der Blockchain-Trend gewinnt weiter an Fahrt. Immer mehr Experten prognostizieren eine universelle Anpassung dieser Technologie in naher Zukunft. Derzeit bleiben einige Probleme ungelöst, die diesem entgegenstehen.

Vor allem die modernen Blockchain-Systeme skalieren schlecht. Zum Beispiel betrĂ€gt die TransaktionskapazitĂ€t von Ethereum nur 20 Transaktionen pro Sekunde, und trotz zahlreicher Vorteile ist es nicht fĂŒr große Unternehmen geeignet.

Gleichzeitig wird Ethereum fĂŒr seinen starken Schutz gegen Hacks und NetzwerkausfĂ€lle geschĂ€tzt. Daher sollte man es nicht abschreiben. Viel sinnvoller wĂ€re es, die MĂ€ngel von Ethereum zu beheben und in Vorteile umzuwandeln.

Öffentliche Testung einer Lösung fĂŒr Datenschutz und Skalierbarkeit in Ethereum auf Cloud-Plattformen

Plasma Cash als Lösung fĂŒr Datenschutz und Skalierbarkeit in Ethereum

Plasma – eine Technologie, die von Vitalik Buterin, MitbegrĂŒnder des Ethereum-Projekts, auf der EthCC-Konferenz in Paris im Jahr 2018 vorgestellt wurde. Sie wurde in Zusammenarbeit mit Joseph Poon, MitbegrĂŒnder des Lightning Network, entwickelt und als Lösung prĂ€sentiert, die die Rechenleistung der Ethereum-Blockchain erhöht. Erste Nachrichten ĂŒber Plasma drangen 2017 in die Medien.

Diese Plattform stellt eine externe Ebene von Smart Contracts dar, die mit der Haupt-Blockchain interagieren kann, wodurch die Hauptkette entlastet wird und die Transaktionskosten fĂŒr Smart Contracts und dezentrale Anwendungen (DApps) sinken.

Detaillierte Informationen zur Entwicklung wurden in dem Dokument "Plasma: Scalable Autonomous Smart Contracts" aus dem August 2017 festgehalten.

Buterin erkannte an, dass es bei Plasma Probleme mit der Skalierbarkeit gibt: Jeder Benutzer muss jeden Plasma-Block herunterladen und ĂŒberprĂŒfen, was exponentielles Skalieren verhindert.

Um diesen Mangel zu beheben, wurde Plasma Cash entwickelt – eine Sidechain, die aus einem Smart Contract und einem privaten Netzwerk auf Basis von Node.js besteht, das regelmĂ€ĂŸig seinen Status in die Haupt-Blockchain (Ethereum) ĂŒbertrĂ€gt. Es gewĂ€hrleistet Dezentralisierung, Sicherheit und Skalierbarkeit in der Blockchain und löst somit das Skalierbarkeitsdilemma.

Ein wichtiges Merkmal von Plasma Cash im Vergleich zu Plasma ist, dass es die Aufmerksamkeit der Nutzer nur auf die Blöcke lenkt, die die fĂŒr sie interessanten MĂŒnzen enthalten:

„Jetzt mĂŒssen die Benutzer die VerfĂŒgbarkeit und Richtigkeit der Plasma-Kette nur fĂŒr einen speziellen Index ĂŒberprĂŒfen, der mit den MĂŒnzen verbunden ist, die sie ausgeben, die sie besitzen und die sie interessieren“, sagte Buterin.

Laut den Entwicklern ist Plasma Cash ein effektives Mittel gegen Hacks in Ethereum. Jede Plasma-MĂŒnze hat einen EigentĂŒmer und ist einzigartig. Niemand kann die MĂŒnzen eines anderen Benutzers ohne dessen Wissen ĂŒbernehmen. Der MĂŒnzinhaber kann potenziellen betrĂŒgerischen Abhebungen durch ein „Beschwerdesystem“ entgegenwirken, indem er seine „Beweisdaten“ in der Geschichte seiner MĂŒnze vorlegt.

Testen von Plasma Cash in Mongo Atlas

Aufgrund ihrer Neuheit bleibt Plasma Cash bisher wenig erforscht. Blockchain-Spezialisten testen aktiv ihre Interaktion mit verschiedenen Cloud-Services und Datenbanken, dokumentieren MĂ€ngel und finden Wege zu deren Behebung. Insbesondere haben die Tests in Mongo Atlas die folgenden Vorteile bei der Arbeit mit Plasma aufgezeigt:

  1. ZuverlÀssiger Schutz vor Datenverlust, da mehrere Replikate innerhalb des Clusters synchronisiert werden.
  2. Schneller Zugriff, da das Cluster auf drei der beliebtesten Cloud-Plattformen erstellt werden kann: Amazon, Google, Azure. Dadurch kann der Plasma Cash-Knoten in vielen Rechenzentren bereitgestellt werden, die nah an Mongo Atlas liegen. Wir haben nachgewiesen, dass die Geschwindigkeit nicht stark abnimmt, selbst wenn Plasma-Knoten in weiter entfernten Rechenzentren eingesetzt werden.
  3. Plasma-Knoten, die nur im Lesemodus verwendet werden, können mit einem einzigen Mongo-Cluster verbunden werden und sind an verschiedenen Orten der Welt angeordnet, was die geo-skalierbarkeit verbessert (Knoten sind nÀher an den Benutzern).
  4. Eine neue Knoteninstanz ist leicht bereitzustellen, da keine vollstÀndige Synchronisierung erforderlich ist. Man kann sich einfach mit einem bestehenden Mongo-Cluster verbinden oder schnell eine Kopie erstellen und die Verbindung dazu einrichten.
  5. Die Datenbank lĂ€sst sich leicht skalieren. Im Laufe der Zeit nimmt die Datenmenge zu und die GrĂ¶ĂŸe der Knoten im Cluster kann nach Bedarf erhöht werden.

Öffentliche Testung einer Lösung fĂŒr Datenschutz und Skalierbarkeit in Ethereum auf Cloud-Plattformen

Wir haben die folgenden Server fĂŒr die DurchfĂŒhrung der Tests verwendet:

  • 3 virtuelle Azure-Server Standard E4s v3 (4 vCPUs, 32 GiB RAM). Auf jedem Server sind 3 Knoten hochgefahren. Einer davon kann Blöcke in die Hauptkette einpflegen.
  • Jeder Knoten ist mit seinem eigenen Mongo Atlas-Cluster M50 verbunden, das 3 Knoten im Replikationsmodus umfasst.

Test 1

3 Knoten empfangen jeweils 100k Transaktionen. Insgesamt befinden sich in allen 9 Knoten 300k Transaktionen und Token.

Video abspielen

Ursprungszustand: letzter Block #213; in der Datenbank sind 0 Transaktionen und Token gespeichert.

00:00 — 3 Skripte wurden gestartet, die jeweils 100k Transaktionen generieren und senden
00:29 — Es begann die Übertragung von 100k Transaktionen an die Knoten #1 und #2
00:32 — Es begann die Übertragung von 100k Transaktionen an Knoten #3
00:32 — Knoten #1 nimmt 11703 Transaktionen aus dem Pool und formt Block #214 (9fb)
00:34 — Knoten #2 nimmt 27088 Transaktionen aus dem Pool und formt Block #214 (ef4)
00:34 — Block #214 (9fb) wurde signiert und an andere Knoten zur Validierung gesendet
00:36 — Knoten #3 nimmt 11900 Transaktionen aus dem Pool und formt Block #214 (983)
00:37 — Block #214 (9fb) wurde validiert und in die Hauptkette gesendet
00:38 — Block #214 (983) wurde signiert und an andere Knoten zur Validierung gesendet
00:38 — Block #214 (ef4) wurde signiert und an andere Knoten zur Validierung gesendet
00:40 — Block #214 (983) wurde validiert und in die Hauptkette gesendet
00:41 — Alle Knoten erhielten aus der Hauptkette die Information, dass Block #214 (9fb) hinzugefĂŒgt wurde und beginnen, 11703 Transaktionen anzuwenden
00:45 — Alle Knoten erhielten aus der Hauptkette die Information, dass Block #215 (983) hinzugefĂŒgt wurde und beginnen, 11900 Transaktionen anzuwenden
00:51 — Block #214 (ef4) wurde validiert und in die Hauptkette gesendet
00:52 — Knoten #1 nimmt 51469 Transaktionen aus dem Pool und formt Block #216 (ea0)
00:56 — Knoten #3 nimmt 55102 Transaktionen aus dem Pool und formt Block #216 (f75)
00:58 — Das Demo-Skript hat seine Arbeit fĂŒr Knoten #2 abgeschlossen
00:58 — Block #216 (ea0) wurde signiert und an andere Knoten zur Validierung gesendet
00:58 — Alle Knoten erhielten aus der Hauptkette die Information, dass Block #216 (ef4) hinzugefĂŒgt wurde und beginnen, 27088 Transaktionen anzuwenden
01:04 — Block #216 (f75) wurde signiert und an andere Knoten zur Validierung gesendet
01:14 — Knoten #2 nimmt 72912 Transaktionen aus dem Pool und formt Block #217 (f85)
01:15 — Das Demo-Skript hat seine Arbeit fĂŒr Knoten #1 und #2 abgeschlossen
01:17 — Die Blöcke #216 (f75) und #216 (ea0) wurden validiert und in die Hauptkette gesendet
01:21 — Block #217 (f85) wurde signiert und an andere Knoten zur Validierung gesendet
01:26 — Die Blöcke #217 (f75) und #218 (ea0) wurden in die Hauptkette eingefĂŒgt und die Knoten beginnen, 51469 bzw. 55102 Transaktionen anzuwenden.
01:27 — Block #217 (а85) wurde validiert und in die Hauptkette gesendet.
01:41 — Knoten #1 hat 36828 Transaktionen aus dem Pool entnommen und formt Block #219 (46f).
01:41 — Knoten #3 hat 32998 Transaktionen aus dem Pool entnommen und formt Block #219 (bb3).
01:43 — Alle Knoten haben Informationen aus der Hauptkette erhalten, dass Block #219 (а85) hinzugefĂŒgt wurde, und beginnen, 72912 Transaktionen anzuwenden.
01:46 — Block #219 (46f) wurde signiert und wird an andere Knoten zur Validierung gesendet.
01:46 — Block #219 (bb3) wurde signiert und wird an andere Knoten zur Validierung gesendet.
01:53 — Knoten #2 hat alle 100k Transaktionen verarbeitet, die im Pool waren.
02:37 — Block #219 (bb3) wurde validiert und in die Hauptkette gesendet.
02:41 — Block #219 (46f) wurde validiert und in die Hauptkette gesendet.
02:48 — Die Blöcke #220 (bb3) und #221 (46f) wurden in die Hauptkette eingefĂŒgt, und die Knoten beginnen, 32998 bzw. 36828 Transaktionen anzuwenden.
02:54 — Knoten #1 hat alle 100k Transaktionen verarbeitet, die im Pool waren.
02:55 — Knoten #3 hat alle 100k Transaktionen verarbeitet, die im Pool waren.
04:12 — Alle Knoten enthalten jeweils 300k Transaktionen und Token des letzten Blocks #221.

Test 2

3 Knoten erhalten jeweils 1kk Transaktionen. Insgesamt befinden sich in allen 9 Knoten 3kk Transaktionen und Token.

Video abspielen

Ursprungszustand: letzter Block #213; in der Datenbank sind 0 Transaktionen und Token gespeichert.

00:00 — 3 Skripte wurden gestartet, die jeweils 1kk Transaktionen generieren und senden.
02:29 — Der Versand von 1kk Transaktionen an die Knoten #1 und #2 hat begonnen.
02:33 — Knoten #1 hat 11668 Transaktionen aus dem Pool entnommen und formt Block #222 (510).
02:35 — Block #222 (510) wurde signiert und wird an andere Knoten zur Validierung gesendet.
02:37 — Block #222 (510) wurde validiert und in die Hauptkette gesendet.
02:38 — Knoten #2 hat 46378 Transaktionen aus dem Pool entnommen und formt Block #222 (a9d).
02:38 — Der Versand von 1kk Transaktionen an Knoten #3 hat begonnen.
02:41 — Knoten #3 hat 5504 Transaktionen aus dem Pool entnommen und formt Block #222 (387).
02:42 — Block #222 (387) wurde signiert und wird an andere Knoten zur Validierung gesendet.
02:44 — Block #222 (a9d) wurde signiert und wird an andere Knoten zur Validierung gesendet.
02:44 — Block #222 (387) wurde validiert und in die Hauptkette gesendet.
02:49 — Block #222 (a9d) wurde validiert und in die Hauptkette gesendet.
02:56 — Die Blöcke #222 (510), #223 (387) und #224 (a9d) wurden in die Hauptkette eingefĂŒgt, und die Knoten beginnen, 11668, 5504 und 46378 Transaktionen anzuwenden.
03:09 — Knoten #1 hat 177170 Transaktionen aus dem Pool entnommen und formt Block #225 (e50).
03:09 — Knoten #3 hat 119327 Transaktionen aus dem Pool entnommen und formt Block #225 (ccc).
03:10 — Knoten #2 hat 149772 Transaktionen aus dem Pool entnommen und block #225 (404) erstellt
03:26 — Block #225 (ccc) wurde signiert und an andere Knoten zur Validierung gesendet
03:32 — Block #225 (404) wurde signiert und an andere Knoten zur Validierung gesendet
03:33 — Block #225 (e50) wurde signiert und an andere Knoten zur Validierung gesendet
03:53 — Block #225 (ccc) wurde validiert und an die Hauptkette gesendet
04:03 — Block #225 (e50) wurde validiert und an die Hauptkette gesendet
04:04 — Block #225 (404) wurde validiert und an die Hauptkette gesendet
04:06 — Alle Knoten haben aus der Hauptkette die Information erhalten, dass Block #225 (ccc) hinzugefĂŒgt wurde, und beginnen mit der Verarbeitung von 119327 Transaktionen
04:14 — Alle Knoten haben aus der Hauptkette die Information erhalten, dass Block #226 (404) hinzugefĂŒgt wurde, und beginnen mit der Verarbeitung von 149772 Transaktionen
04:16 — Alle Knoten haben aus der Hauptkette die Information erhalten, dass Block #227 (e50) hinzugefĂŒgt wurde, und beginnen mit der Verarbeitung von 177170 Transaktionen
04:32 — Knoten #3 hat 209436 Transaktionen aus dem Pool entnommen und block #228 (1e9) erstellt
04:40 — Knoten #2 hat 212669 Transaktionen aus dem Pool entnommen und block #228 (e38) erstellt
04:40 — Knoten #1 hat 190144 Transaktionen aus dem Pool entnommen und block #228 (861) erstellt
05:02 — Block #228 (1e9) wurde signiert und an andere Knoten zur Validierung gesendet
05:08 — Block #228 (861) wurde signiert und an andere Knoten zur Validierung gesendet
05:10 — Block #228 (e38) wurde signiert und an andere Knoten zur Validierung gesendet
06:13 — Block #228 (1e9) wurde validiert und an die Hauptkette gesendet
06:13 — Block #228 (861) wurde validiert und an die Hauptkette gesendet
06:13 — Block #228 (e38) wurde validiert und an die Hauptkette gesendet
06:39 — Die Blöcke #228 (861), #229 (1e9) und #230 (e38) wurden der Hauptkette hinzugefĂŒgt und die Knoten haben begonnen, 190144, 209436 und 212669 Transaktionen entsprechend zu verarbeiten
07:07 — Knoten #1 hat 199770 Transaktionen aus dem Pool entnommen und block #231 (e04) erstellt
07:09 — Knoten #2 hat 190473 Transaktionen aus dem Pool entnommen und block #231 (36e) erstellt
07:09 — Knoten #3 hat 178807 Transaktionen aus dem Pool entnommen und block #231 (f43) erstellt
07:34 — Block #231 (e04) wurde signiert und an andere Knoten zur Validierung gesendet
07:37 — Block #231 (36e) wurde signiert und an andere Knoten zur Validierung gesendet
07:37 — Block #231 (f43) wurde signiert und an andere Knoten zur Validierung gesendet
08:49 — Block #231 (e04) wurde validiert und an die Hauptkette gesendet
08:51 — Block #231 (f43) wurde validiert und an die Hauptkette gesendet
08:52 — Block #231 (36e) wurde validiert und an die Hauptkette gesendet
09:47 — Blöcke #231 (e04) #232 (f43) und #233 (36e) wurden in die Hauptkette hinzugefĂŒgt und die Knoten beginnen, 199770, 178807 und 190473 Transaktionen entsprechend anzuwenden.
10:16 — Knoten #1 hat 153075 Transaktionen aus dem Pool genommen und bildet Block #234 (e04).
10:16 — Knoten #2 hat 168035 Transaktionen aus dem Pool genommen und bildet Block #234 (36e).
10:16 — Knoten #3 hat 166685 Transaktionen aus dem Pool genommen und bildet Block #234 (f43).
10:42 — Block #234 (56d) wurde signiert und zur Validierung an andere Knoten gesendet.
11:59 — Block #234 (1bb) wurde validiert und in die Hauptkette gesendet.
12:02 — Block #234 (58a) wurde validiert und in die Hauptkette gesendet.
12:02 — Block #234 (56d) wurde validiert und in die Hauptkette gesendet.
12:48 — Die Blöcke #234 (1bb) #235 (58a) und #236 (56d) wurden in die Hauptkette hinzugefĂŒgt und die Knoten beginnen, 153075, 168035 und 166685 Transaktionen entsprechend anzuwenden.
13:14 — Knoten #1 hat 112226 Transaktionen aus dem Pool genommen und bildet Block #237 (5c0).
13:16 — Knoten #2 hat 87550 Transaktionen aus dem Pool genommen und bildet Block #234 (58a).
13:16 — Knoten #3 hat 99594 Transaktionen aus dem Pool genommen und bildet Block #234 (56d).
13:30 — Block #237 (5c0) wurde signiert und zur Validierung an andere Knoten gesendet.
13:32 — Block #237 (58a) wurde signiert und zur Validierung an andere Knoten gesendet.
13:34 — Block #237 (56d) wurde signiert und zur Validierung an andere Knoten gesendet.
14:47 — Block #237 (58a) wurde validiert und in die Hauptkette gesendet.
14:53 — Block #237 (5c0) wurde innerhalb der angegebenen Zeit nicht validiert.
14:53 — Alle Knoten haben Informationen aus der Hauptkette erhalten, dass Block #237 (58a) hinzugefĂŒgt wurde, und beginnen, 87550 Transaktionen anzuwenden.
14:54 — Block #237 (56d) wurde validiert und in die Hauptkette gesendet.
15:02 — Knoten #1 hat 181206 Transaktionen aus dem Pool genommen und bildet Block #238 (c5f).
15:06 — Alle Knoten haben Informationen aus der Hauptkette erhalten, dass Block #238 (56d) hinzugefĂŒgt wurde, und beginnen, 99594 Transaktionen anzuwenden.
15:12 — Knoten #2 hat 51990 Transaktionen aus dem Pool genommen und bildet Block #239 (ad8).
15:20 — Block #239 (ad8) wurde signiert und zur Validierung an andere Knoten gesendet.
15:25 — Knoten #3 hat 46685 Transaktionen aus dem Pool genommen und bildet Block #239 (857).
15:30 — Block #238 (c5f) wurde signiert und zur Validierung an andere Knoten gesendet.
15:34 — Block #239 (857) wurde signiert und zur Validierung an andere Knoten gesendet.
16:32 — Block #239 (857) wurde validiert und in die Hauptkette gesendet.
16:42 — Alle Knoten haben Informationen aus der Hauptkette erhalten, dass Block #239 (857) hinzugefĂŒgt wurde, und beginnen, 46685 Transaktionen anzuwenden.
16:42 — Block #238 (c5f) wurde validiert und in die Hauptkette gesendet.
16:42 — Block #239 (ad8) wurde innerhalb der angegebenen Zeit nicht validiert
16:54 — Knoten #2 hat 96882 Transaktionen aus dem Pool entnommen und formt Block #240 (e6e)
16:56 — Knoten #3 hat 39704 Transaktionen aus dem Pool entnommen und formt Block #240 (a47)
17:02 — Block #240 (a47) wurde signiert und wird anderen Knoten zur Validierung gesendet
17:02 — Block #240 (e6e) wurde signiert und wird anderen Knoten zur Validierung gesendet
17:18 — Alle Knoten haben Informationen aus der Wurzelkette erhalten, dass Block #240 (c5f) hinzugefĂŒgt wurde, und beginnen, 181206 Transaktionen anzuwenden
17:45 — Block #240 (a47) wurde validiert und in die Wurzelkette gesendet
17:47 — Knoten #1 hat 54956 Transaktionen aus dem Pool entnommen und formt Block #241 (170)
17:59 — Block #241 (170) wurde signiert und wird anderen Knoten zur Validierung gesendet
18:09 — Alle Knoten haben Informationen aus der Wurzelkette erhalten, dass Block #241 (a47) hinzugefĂŒgt wurde, und beginnen, 181206 Transaktionen anzuwenden
18:20 — Knoten #3 hat 39104 Transaktionen aus dem Pool entnommen und formt Block #242 (955)
18:24 — Block #240 (e6e) wurde validiert und in die Wurzelkette gesendet
18:28 — Block #242 (955) wurde signiert und wird anderen Knoten zur Validierung gesendet
18:09 — Alle Knoten haben Informationen aus der Wurzelkette erhalten, dass Block #242 (e6e) hinzugefĂŒgt wurde, und beginnen, 96882 Transaktionen anzuwenden
19:06 — Das Demodrehbuch hat seine Arbeit fĂŒr Knoten #1 beendet
19:08 — Das Demodrehbuch hat seine Arbeit fĂŒr Knoten #2 beendet
19:08 — Knoten #2 hat 48241 Transaktionen aus dem Pool entnommen und formt Block #243 (fde)
19:14 — Block #243 (fde) wurde signiert und wird anderen Knoten zur Validierung gesendet
19:18 — Block #241 (170) wurde innerhalb der angegebenen Zeit nicht validiert
19:28 — Knoten #1 hat 86967 Transaktionen aus dem Pool entnommen und formt Block #243 (37c)
19:35 — Block #242 (955) wurde validiert und in die Wurzelkette gesendet
19:40 — Block #243 (37c) wurde signiert und wird anderen Knoten zur Validierung gesendet
20:05 — Alle Knoten haben Informationen aus der Wurzelkette erhalten, dass Block #243 (955) hinzugefĂŒgt wurde, und beginnen, 39104 Transaktionen anzuwenden
20:15 — Block #243 (fde) wurde validiert und in die Wurzelkette gesendet
20:19 — Knoten #3 hat 42981 Transaktionen aus dem Pool entnommen und formt Block #244 (9b5)
20:26 — Block #244 (9b5) wurde signiert und wird anderen Knoten zur Validierung gesendet
20:28 — Alle Knoten haben Informationen aus der Wurzelkette erhalten, dass Block #244 (fde) hinzugefĂŒgt wurde, und beginnen, 48241 Transaktionen anzuwenden
20:32 — Knoten #2 hat alle 1k Transaktionen, die im Pool waren, verarbeitet
21:05 — Block #243 (37c) wurde innerhalb der angegebenen Zeit nicht validiert
21:15 — Knoten #1 hat 86967 Transaktionen aus dem Pool entnommen und formt Block #245 (37c)
21:32 — Block #245 (37c) wurde signiert und wird an andere Nodes zur Validierung gesendet
21:42 — Block #244 (9b5) wurde validiert und in die Hauptkette gesendet
21:50 — Alle Nodes haben Informationen aus der Hauptkette erhalten, dass Block #245 (9b5) hinzugefĂŒgt wurde und beginnen, 42981 Transaktionen anzuwenden
22:04 — Node #3 hat 45361 Transaktionen aus dem Pool ĂŒbernommen und bildet Block #246 (3f9)
22:11 — Block #246 (3f9) wurde signiert und wird an andere Nodes zur Validierung gesendet
22:51 — Block #245 (37c) wurde innerhalb der vorgegebenen Zeit nicht validiert
23:01 — Node #1 hat 86967 Transaktionen aus dem Pool ĂŒbernommen und bildet Block #246 (37c)
23:08 — Das Demo-Skript hat seine Arbeit fĂŒr Node #3 beendet
23:15 — Block #246 (37c) wurde signiert und wird an andere Nodes zur Validierung gesendet
23:32 — Block #246 (3f9) wurde innerhalb der vorgegebenen Zeit nicht validiert
23:42 — Node #3 hat 52173 Transaktionen aus dem Pool ĂŒbernommen und bildet Block #246 (71d)
23:51 — Block #246 (71d) wurde signiert und wird an andere Nodes zur Validierung gesendet
24:38 — Block #246 (37c) wurde innerhalb der vorgegebenen Zeit nicht validiert
25:01 — Node #1 hat 86967 Transaktionen aus dem Pool ĂŒbernommen und bildet Block #246 (37c)
25:06 — Block #246 (71d) wurde validiert und in die Hauptkette gesendet
25:12 — Block #246 (37c) wurde signiert und wird an andere Nodes zur Validierung gesendet
25:14 — Alle Nodes haben Informationen aus der Hauptkette erhalten, dass Block #246 (71d) hinzugefĂŒgt wurde und beginnen, 52173 Transaktionen anzuwenden
25:29 — Node #3 hat alle 1k Transaktionen verarbeitet, die im Pool waren
26:40 — Block #247 (37c) wurde innerhalb der vorgegebenen Zeit nicht validiert
26:47 — Node #1 hat 86967 Transaktionen aus dem Pool ĂŒbernommen und bildet Block #247 (37c)
27:03 — Block #247 (37c) wurde signiert und wird an andere Nodes zur Validierung gesendet
28:29 — Block #247 (37c) wurde innerhalb der vorgegebenen Zeit nicht validiert
28:35 — Node #1 hat 86967 Transaktionen aus dem Pool ĂŒbernommen und bildet Block #247 (37c)
28:49 — Block #247 (37c) wurde signiert und wird an andere Nodes zur Validierung gesendet
30:13 — Block #247 (37c) wurde innerhalb der vorgegebenen Zeit nicht validiert
30:23 — Node #1 hat 86967 Transaktionen aus dem Pool ĂŒbernommen und bildet Block #247 (37c)
30:38 — Block #247 (37c) wurde signiert und wird an andere Nodes zur Validierung gesendet
32:00 — Block #247 (37c) wurde innerhalb der vorgegebenen Zeit nicht validiert
32:11 — Node #1 hat 86967 Transaktionen aus dem Pool ĂŒbernommen und bildet Block #247 (37c)
32:26 — Block #247 (37c) wurde signiert und wird an andere Nodes zur Validierung gesendet
33:49 — Block #247 (37c) wurde innerhalb der vorgegebenen Zeit nicht validiert
33:59 — Node #1 hat 86967 Transaktionen aus dem Pool ĂŒbernommen und bildet Block #247 (37c)
34:12 — Block #247 (37c) wurde signiert und an andere Nodes zur Validierung gesendet
35:34 — Block #247 (37c) wurde validiert und in die Haupt-Chain gesendet
35:54 — Alle Nodes erhielten Informationen aus der Haupt-Chain, dass Block #247 (37c) hinzugefĂŒgt wurde, und beginnen, 86967 Transaktionen anzuwenden
36:11 — Node #1 hat alle 1 Million Transaktionen verarbeitet, die im Pool waren
55:12 — Der erste Node hat alle 3 Millionen Transaktionen verarbeitet

Öffentliche Testung einer Lösung fĂŒr Datenschutz und Skalierbarkeit in Ethereum auf Cloud-Plattformen

Ergebnisse

Es wurde festgestellt, dass die virtuellen Azure-Server nicht ĂŒber ausreichende Rechenleistung verfĂŒgen, um eine so große Anzahl von Transaktionen zu verarbeiten. Aber die Hauptaufgabe der Tests, nĂ€mlich die Funktionsweise von Plasma Cash mit MongoDB zu demonstrieren, hat das System gut gemeistert.

Wir laden Sie ein, zu besuchen GitHub Projekt definiert: https://github.com/opporty-com/Plasma-Cash/tree/new-version

Der Artikel wurde in Zusammenarbeit mit Alexander Nashivan, leitender Entwickler Clever Solution Inc.

Das Entwicklerteam von Opporty hat bereits die Geschwindigkeit von Plasma Cash getestet. Die Ergebnisse sind in diesem Artikel.

Quelle: habr.com

60GB SSD 8Gb DDR4