Zurück zu Nachrichten
🍌
NanoMarketCap Teamentwicklung · tools

RsNano V3.0: Eine Rust-Codebasis, zwei Währungen

RsNano V3.0: Eine Rust-Codebasis, zwei Währungen

RsNano ist die Rust-Neuimplementierung des Nano-Nodes, und Entwickler gschauwecker hat das bisher größte Release des Projekts veröffentlicht. V3.0 macht aus einem reinen Nano-Node einen Node für zwei Chains: Dieselbe Codebasis lässt sich jetzt wahlweise für Nano oder Banano kompilieren, die Währung wird zur Build-Zeit festgelegt. Die Schlagzeile dieses Releases ist der erstklassige Banano-Support.

Eine Codebasis, zwei Währungen

Der Banano-Support ist ausgewachsen, kein Notbehelf. Ein banano-Feature-Flag wählt die Währung zur Build-Zeit. Das Repository enthält eingebaute Rep-Gewichte und Währungs-Konstanten für beide Netzwerke, und ein Build für Banano erzeugt ein eigenes rsban-Binary. Fragt man bei einem Banano-Build die Version per RPC ab, lautet die Antwort „RsBan". Kein separater Fork, keine zweite Codebasis, die auseinanderdriften kann.

Codebasis

eine Rust-Codebasis

Währungen

Nano + Banano

Binaries

rsnano · rsban

Für Banano-Betreiber ist das ein wichtiger Schritt: Das Netzwerk bekommt endlich eine unabhängige Alternative zum C++-Node, eine in Rust.

Offizielle Docker-Images

RsNano liefert jetzt offizielle Docker-Images mit, die bei jedem Push automatisch über GitHub Actions veröffentlicht werden. Sie basieren auf Alpine, damit sie klein bleiben, und die Builds laufen über cargo-chef für schnelle, gecachte Layer. Für jede Währung gibt es ein eigenes Image:

die offiziellen Images starten

Nano

docker run -p 7075:7075 -v ~/Nano:/home/nanocurrency/Nano rsnano/rsnano:V3.0 node run

Banano

docker run -p 7075:7075 -v ~/Banano:/home/bananocurrency/Banano rsnano/rsban:V3.0 node run

Beide Images verwenden denselben Port, 7075. Wer beide Chains auf einer Maschine betreiben will, sollte die Host-Seite des -p-Mappings anpassen.

Insight-GUI, deutlich erweitert

Die Monitoring-GUI hat ein großes Update bekommen. Neue Ansichten: Peer-Score-Visualisierung, aktive Wahlen (AEC) mit Details pro Bucket, eine Detailansicht für einzelne Wahlen und eine vollständige Bootstrap-Ansicht, die blockierte, ladende und priorisierte Konten zeigt, mit Filtern und einem Konsistenzcheck. Dazu kommt die Filterung des Nachrichtenlogs nach Richtung und Typ.

Bootstrap-Engine, neu geschrieben

Das Ledger-Sync-Subsystem wurde grundlegend überarbeitet statt nur geflickt. Live-Netzwerkverkehr wird beim Bootstrapping jetzt ignoriert, damit eingehende Blöcke den Sync nicht stören können. Prioritäten und Pull-Größen wurden an das Verhalten des offiziellen nano_node angeglichen, und das Changelog nennt Fixes für Sync-Stalls, Freezes und Block-Handoff-Leaks. Das sind Fehlerklassen, die sich nur schwer reproduzieren lassen, die Fixes verdienen also Tests im echten Betrieb.

Der Rest des Changelogs

  • Eine neue Netzwerk-Einstellung handshake_timeout mit zentraler Bereinigung inaktiver Kanäle.
  • Geänderte LMDB-Standardwerte für mehr Tempo: nosync_unsafe und NO_READAHEAD.

Ein Kompromiss, den man kennen sollte

nosync_unsafe tauscht Haltbarkeit gegen Durchsatz: LMDB überspringt das Synchronisieren der Daten auf die Festplatte bei jedem Commit. Für die meisten Nodes in Ordnung, auf unzuverlässiger Hardware weniger.

  • Konsistenzchecks des Ledgers beim Start.
  • Neue CLI-Werkzeuge: Rep-Gewicht-Informationen und ein Ledger-Diff-Tool.
  • Umstieg auf Rust Edition 2024.

V3.0 ist ein Release mit echter Tragweite: eine zweite Währung, ein neu gebauter Sync-Pfad und ordentliche Distributions-Werkzeuge. Node-Betreiber sollten den Bootstrap-Pfad vor dem Upgrade auf einem Staging-Node testen. Banano-Betreiber haben endlich eine Wahl.

rsnano-node/rsnano-nodeUpdated Jul 2026
GitHub

RsNano is a Rust port of nano-node

107
17
Rust
BSD-3-Clause

Ähnliche Artikel