Was passiert tatsächlich, wenn du eine Ethereum-Transaktion sendest

---> Das Problem

Du klickst auf "Senden" in deiner Wallet. Die UI bestätigt die Transaktion.

Aber dann… passiert nichts.

Manchmal wird es in Sekunden bestätigt.
Manchmal hängt es minutenlang—oder schlägt komplett fehl.

Warum?

Die meisten Erklärungen hören bei "es geht zur Blockchain" auf.

Das ist nicht hilfreich, wenn du Systeme darauf aufbaust.

Lass uns aufschlüsseln, was tatsächlich im Hintergrund passiert.


Mentales Modell (Kurze Orientierung)


Eine Transaktion wird nicht sofort ausgeführt.

Es durchläuft drei verschiedene Phasen:

  • Verbreitung (Mempool)

  • Einbeziehung (Blockvorschlag)

  • Ausführung (Zustandsübergang)

Jede Phase bringt Latenz, Risiko und Fehlerquellen mit sich.


Schritt 1: Transaktions Erstellung

Wenn du auf “senden” klickst:


  • Deine Wallet erstellt eine Transaktion:

    • an

    • Wert

    • Gaslimit

    • maxFeePerGas

    • Daten (bei Vertragsinteraktionen)

    Es signiert die Transaktion mit deinem privaten Schlüssel

An diesem Punkt:
👉 Die Transaktion ist gültig, aber noch nicht im Netzwerk bekannt


Schritt 2: An das Netzwerk broadcasten

Deine Wallet sendet die Transaktion an einen Knoten.

  • Dieser Knoten:

  • Signatur verifizieren

  • Nonce überprüfen

  • Grundlegende Gültigkeit sicherstellen

Wenn gültig → geht in den Mempool


Schritt 3: Der Mempool (Wo es interessant wird)

Der Mempool ist:

  • Ein temporärer Wartungsbereich

  • Nicht global konsistent

  • Unterschiedlich zwischen den Knoten

Das bedeutet:
👉 Deine Transaktion könnte in einigen Knoten existieren—aber nicht in anderen

Schlüsseldimension:

  • Knoten priorisieren Transaktionen nach Gebühr

  • Höhere maxFeePerGas = höhere Priorität


📊 Diagramm 1: Transaktionsverbreitungsfluss


Diagramm sollte zeigen:

  • Benutzer-Wallet → Knoten A → Knoten B → Knoten C

  • Jeder Knoten hat seinen eigenen Mempool

  • Pfeile, die die Gossip-Verbreitung zeigen

  • Hervorheben: “Nicht alle Mempools sind identisch”


Schritt 4: Blockvorschlag

Validatoren wählen Transaktionen aus ihrem Mempool.

Sie wählen:

  • Transaktionen mit den höchsten Gebühren zuerst

  • Transaktionen, die innerhalb der Gasgrenzen liegen

Wichtig:
👉 Deine Transaktion konkurriert mit anderen



Schritt 5: Ausführung (EVM Ebene)


Sobald in einen Block aufgenommen

  • Die Transaktion wird innerhalb der EVM ausgeführt

  • Zustandsänderungen treten auf:

    • Kontostände aktualisieren

    • Änderungen im Smart Contract-Speicher

Wenn die Ausführung fehlschlägt:

  • Gas wird trotzdem verbraucht

  • Zustandsänderungen revertieren


📊 Diagramm 2: Ausführungsfluss


Diagramm sollte zeigen:

  • Block → EVM → Zustandsübergang

  • Eingaben:

    • Transaktion

    • Aktueller Zustand


  • Ausgabe:

    • Neuer Zustand

  • Schließe “Gasverbrauch” in jedem Schritt ein


Randfälle & Fehlerquellen

Hier scheitern die meisten Artikel. Lass uns tiefer eintauchen.

❌ 1. Transaktion im Mempool feststecken

  • Gebühr zu niedrig

  • Wurde nie von Validatoren ausgewählt

❌ 2. Abgebrochene Transaktion

  • Knoten entfernt es aufgrund von:

    • Niedrige Gebühr

    • Mempool Überlauf

❌ 3. Ersetzte Transaktion

  • Gleiche Nonce + höhere Gebühr → ersetzt Original

❌ 4. Ausführung ohne Gas

  • Ausführung stoppt mitten im Prozess

  • Zustand revertiert

  • Gas verloren

❌ 5. Kettenreorganisation (Reorg)

  • Block wird ersetzt

  • Transaktion kann vorübergehend verschwinden



Reale Auswirkungen

Für Entwickler:

  • Du kannst nicht von sofortiger Endgültigkeit ausgehen

  • Muss ausstehende Zustände verwalten

Für UX:

  • Benutzer sehen “ausstehend” → Verwirrung

  • Gebührenabschätzung wird kritisch

Für Systemdesigns

  • Retry-Logik ist notwendig

  • Transaktionsüberwachung ist obligatorisch


Wichtige Erkenntnisse

  • Eine Transaktion ist ein mehrstufiger Prozess, kein einmaliges Ereignis

  • Der Mempool ist nicht deterministisch und fragmentiert

  • Gebühren beeinflussen direkt die Ausführungswahrscheinlichkeit

  • Fehler können auf mehreren Ebenen auftreten

  • Systeme müssen fürUnsicherheit und Verzögerung ausgelegt sein



Wenn du auf Ethereum aufbaust, ist das Verständnis dieser Pipeline nicht optional—es ist die Grundlage$ETH