rag/internal/providers/jobs.go

28 lines
572 B
Go
Raw Permalink Normal View History

2024-07-14 09:44:49 +00:00
package providers
import (
"github.com/hibiken/asynq"
)
func getAsynQRedisOpt() asynq.RedisClientOpt {
var config = MustGet[GlobalConfig]()
return asynq.RedisClientOpt{
Addr: config.Redis.Addr,
Password: config.Redis.Pass,
DB: 0,
}
}
func ProvideAsynQClient() *asynq.Client {
return asynq.NewClient(getAsynQRedisOpt())
}
func ProvideAsynQServer() *asynq.Server {
return asynq.NewServer(getAsynQRedisOpt(), asynq.Config{Concurrency: 10})
}
func init() {
Must(Container.Provide(ProvideAsynQClient))
Must(Container.Provide(ProvideAsynQServer))
}