youbbs avatar

sdb:基于goleveldb的简单数据库

🕑 by youbbs

前段时间抽空写的一个关于 boltdb 与 goleveldb 的测试,测试参见 《Golang boltdb 与 leveldb 的读写性能比较》 https://www.youbbs.org/t/3210

sdb 主要是为了 hash 操作方便,接口与 youdb 吻合度很高,可以做很少的修改就能应用在 goyoubbs 程序。

主要接口:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
db, _ := sdb.Open("testdb", nil)

db.Hset("name", "k", "v")
db.Hget("name", "k")
db.Hdel("name", "k")
db.Hincr("name", "k", 3)
db.Hscan("name", nil, 10)
db.Hrscan("name", nil, 10)

db.Zset("name", "k", 1)
db.Zget("name", "k")
db.Zdel("name", "k")
db.Zincr("name", "k", 3)
db.Zscan("name", nil, 10)
db.Zrscan("name", nil, 10)

开源地址 https://github.com/ego008/sdb

相关参考

💘 相关文章

评论

共2条关于"sdb:基于goleveldb的简单数据库"的评论

冒烟的蘑菇 avatar
#1 冒烟的蘑菇 回复

感觉就是类似 redis 的接口,照着来的~所以我建议弄个 interface 封装一下,这样后端可通过配置方便的切换数据引擎~

不过好像没啥卵用~

youbbs avatar
#2 youbbs 回复

@冒烟的蘑菇 就是一个数据库的中间件,换个不同的数据库,就得编写中间件。真要着手去试的话,可综合考虑切换的方式、程序、中间件,都可以按需调整。

写一条评论

Based on Golang + fastHTTP + sdb | go1.17.1 Processed in 0ms