Login
Newsletter
Werbung

Do, 15. August 2019, 13:24

Software::Entwicklung

Replikationsbibliothek NuRaft vorgestellt

Entwickler bei Ebay haben die Bibliothek NuRaft unter einer freien Lizenz veröffentlicht. NuRaft ist eine Implementation des Konsens-Algorithmus Raft, der dazu dient, dass replizierte Server eine identische Sicht der Dinge haben.

Schnittstellen und wichtigste Aufrufe von NuRaft

Ebay

Schnittstellen und wichtigste Aufrufe von NuRaft

Raft ist ein Konsens-Algorithmus von Andy Chen, in dem zweifellos einiges an Forschung steckt. Seine Fehlertoleranz und Geschwindigkeit sollen dem Algorithmus Paxos ebenbürtig sein, durch seine Modularität jedoch leichter verständlich sein. Konsens-Algorithmen sorgen dafür, dass replizierte Server eine identische Sicht der Dinge haben. Die Replikation dient der Hochverfügbarkeit der Daten und Dienste und ist nur sinnvoll, wenn sie für die jeweilige Anwendung ausreichend konsistent ist. Auch bei der Koordination von verteiltem Rechnen kommen Konsens-Algorithmen zum Einsatz. Das Ziel von Raft besteht darin, Konsens-Algorithmen den Software-Entwicklern leichter zugänglich zu machen. Das soll dazu führen, dass Implementationen von höherer Qualität als die seinerzeit genutzten entstehen.

Zu den Nutzern von Raft zählt auch Ebay. Entwickler des Unternehmens schrieben, ausgehend von der C++Implementation Cornerstone, die noch von Chen selbst stammt, in zweijähriger Arbeit eine erweiterte Implementation. Die Programmiersprache blieb C++, die Funktionalität wurde deutlich erweitert. Die Entwickler tauften die neue Bibliothek NuRaft und stellen sie jetzt in einem Blog-Beitrag vor.

Gegenüber Cornerstone bietet NuRaft eine Reihe zusätzlicher Funktionen. Die Entwickler nennen ein Pre-Vote-Protokoll, Leadership Expiration, Auswahl eines leitenden Knotens auf Basis von Prioritäten, nur lesend zugreifende Knoten, objektbasierte logische Schnappschüsse, anpassbare Größe des Quorums für Commit und Auswahl eines leitenden Knotens, asynchrone Replikation und Unterstützung von TLS.

NuRaft steht unter der Apache-Lizenz 2.0 und kann aus dem GitHub-Repositorium des Projekts bezogen werden. Ein stabiler Stand, der mit einer Versionsnummer versehen wurde, existiert noch nicht. Ob das Produkt bei Ebay bereits produktiv eingesetzt wird, lässt der Blog-Beitrag offen. Es wurde laut den Entwicklern aber zumindest bereits im Hinblick auf den produktiven Einsatz getestet. Externe Beiträge sind willkommen.

Werbung
Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten
Werbung