1
0
镜像自地址 https://github.com/tuna/tunasync.git 已同步 2025-12-06 14:36:47 +00:00

Add redis backend for db

这个提交包含在:
jiegec
2020-10-13 14:50:19 +08:00
父节点 a2887da2dd
当前提交 a137f0676a
共有 5 个文件被更改,包括 210 次插入5 次删除

查看文件

@@ -5,6 +5,7 @@ import (
"time"
"github.com/boltdb/bolt"
"github.com/go-redis/redis/v8"
. "github.com/tuna/tunasync/internal"
)
@@ -24,6 +25,11 @@ type dbAdapter interface {
Close() error
}
const (
_workerBucketKey = "workers"
_statusBucketKey = "mirror_status"
)
func makeDBAdapter(dbType string, dbFile string) (dbAdapter, error) {
if dbType == "bolt" {
innerDB, err := bolt.Open(dbFile, 0600, &bolt.Options{
@@ -38,6 +44,15 @@ func makeDBAdapter(dbType string, dbFile string) (dbAdapter, error) {
}
err = db.Init()
return &db, err
} else if dbType == "redis" {
innerDB := redis.NewClient(&redis.Options{
Addr: dbFile,
})
db := redisAdapter{
db: innerDB,
}
err := db.Init()
return &db, err
}
// unsupported db-type
return nil, fmt.Errorf("unsupported db-type: %s", dbType)