Sind Protokolle ein zuverlässiger Ort, um Daten langfristig zu speichern?

Sind Protokolle ein zuverlässiger Ort, um Daten langfristig zu speichern?

Aus der Dokumentation:

"Diese Protokolle sind mit der Adresse des Vertrags verknüpft und werden in die Blockchain aufgenommen und bleiben dort, solange ein Block zugänglich ist ( für immer von Frontier und Homestead, aber dies könnte sich mit Serenity ändern )"

Bearbeiten

Protokolle funktionieren jetzt - ich verstehe. Aber sind sie zukunftssichere Möglichkeiten, App-kritische Informationen zu speichern? Welche Informationen neben „das könnte sich mit Serenity ändern“ sind verfügbar? Bleiben sie danach noch lange bestehen? Weitere Einblicke erwünscht.

Hey will_durant, hast du die Antwort gefunden, nach der du gesucht hast? Ich bin daran interessiert und wir planen, einige Daten in Protokollen zu speichern, da dies billiger ist

Antworten (1)

Protokolle sind zuverlässig und der beste Weg, um Transaktionen zu verarbeiten, wenn jemand mit Ihrem Vertrag interagiert. Wenn Sie beispielsweise einen Auktionsvertrag haben, können Sie ein Ereignis ausgeben, wenn ein Gebot abgegeben wird, wenn jemand das Gebot gewinnt usw., und so die Transaktion verarbeiten. Wie die Dokumentation sagt, verbleiben Protokolle in der Blockchain, solange der Block zugänglich ist .

Sie können diese Blöcke/Transaktionen aus der Vergangenheit jederzeit erneut aufrufen und web3.getTransaction()& web3.getTransactionReceipt()zusammen mit ABI und LogParser verwenden , um alle Protokolle/Ereignis-Hashes in für Menschen lesbaren Text zu dekodieren.

Hoffe das hilft

Ich suche mehr nach Informationen über bevorstehende Änderungen in Serenity. Anscheinend sind Blöcke möglicherweise nicht für immer zugänglich.
Protokoll erledigt die Arbeit. Sie müssen sich nur darüber im Klaren sein, dass Sie bei einem Hard Fork nicht mehr an Protokollen vorbeikommen
Ja, sobald ein Hard Fork erfolgt ist, sind die Protokolle nicht mehr zugänglich