rraft-py: Raftアルゴリズム実装のPythonバインディング開発
(github.com/lablup)こんにちは、スタートアップでDevOpsをしているジュニア開発者です。
私たちの会社の製品には独自のオーケストレーター実装があり、Raftアルゴリズムを使う必要がありました。対象の製品はPythonで開発されていましたが、Python側にはデファクトとして使われているRaftアルゴリズム実装が特にないように見えました。
そこで、よく知られていて信頼できるraftライブラリに対するPythonバインディングを書くことを決めました。バインディングを書く過程は予想以上に難しかったのですが、さまざまな試行錯誤の末、すべてのハーネステストコードを通過するバインディングの実装に成功しました。
しかし、ソースコードをすべて書き終えた後でも、async-raftやHashicorpのraft実装のような別の実装を選ぶべきだったのではないか、バインディングを書く代わりにソースコード自体を移植したほうがより賢明な選択だったのではないか、などいろいろ考えています。
このPythonバインディングについて、ほかの皆さんがどう思うか気になって投稿しました。
まだコメントはありません。