一直在迭代自己的 SDB。
1.x 版本发布后,SDB 已经是一个可靠的数据库了。并在 2022.03.10 增加了 cli 功能,提供 SDB 的易用性。之后我们便开始思考如何为 SDB 增加分布式的能力。
参考 redis 的实现,SDB 优先实现了主从架构,也在 v2.0.0 正式发布。
实现的过程比较曲折,golang 语言下可靠的 raft 库并不多,只找到了两种候选方案,并对候选方案做了以下结论:
为了支持国人项目,SDB 选择了 dragonboat raft ,写入的 QPS 从 12k 下降到了 5k ,但读能力是不受影响的,而且也可以水平扩展读能力,收益还是大于损耗的。
架构图如下:
1
ToBeHacker 2022-03-27 11:14:03 +08:00
大概看了一遍,非常赞
|
2
Aidenboss OP @ToBeHacker 感谢支持。 😀😀😀
|
3
dacapoday 2022-03-28 10:08:31 +08:00
看到部分指令和 Redis 类似,有考虑直接兼容现有的 Redis Client 吗?
|
4
LoNeFong 2022-03-28 10:53:06 +08:00
已 star
|