NostrP2Pのオンメモリでデータ管理してたところを、丸ッと組み込みDB(NutsDB)に置き換えるクラスを書いた。

割とすんなり書けたがまだ動かしていない(ドン

ほとんどのデータはDBのオンメモリバッファに載ると思うが、シリアライズしたバイナリをぶっこんでるので、毎回デシリアライズしないといけないのが、パフォーマンスにどう影響あるか心配。

なおMessagePack。

オンメモリ版:

https://github.com/ryogrid/nostrp2p/blob/02fc49a8106b30914f2e1597635a3519dd8d948a/core/on_memory_data_manager.go

DB(高機能めのKVS)にストア版:

https://github.com/ryogrid/nostrp2p/blob/02fc49a8106b30914f2e1597635a3519dd8d948a/core/nuts_db_data_manager.go

#nostrp2p

Reply to this note

Please Login to reply.

Discussion

バケットというのでKVS空間(?)は分けられるので、個別のインデックスみたいなものは、KVS上に自分で構築してそれを使う作り。

メインのやつはタイムスタンプ順(一種のキー)でなめられるリストみたいなんで単一のキーに対応する値として突っ込んである。

#nostrp2p

動かしてみたところ落ちましたと。

はい。まあ、一発で動くわけないよね。

#nostrp2p

ああ、これはNutsDBがバグってるわ()

#nostrp2p