我正在尝试将数据从我的Go消费者推入redis队列中。
我使用的包是"github.com/kavu/go-resque"
我使用的redis驱动程序是"github.com/kavu/go-resque/go-redis"和"github.com/go-redis/redis"。
我的代码如下所示:
"github.com/kavu/go-resque"
_"github.com/kavu/go-resque/go-redis"
"github.com/go-redis/redis"
"time"
"strings"
redisClient := redis.NewClient(&redis.Options{
Addr: myRedisIp,
Password: "", // no password set
DB: 0, // use default DB
DialTimeout: 10 * time.Second,
})
enqueuer := resque.NewRedisEnqueuer("go-redis", redisClient,"test-redis")
_, err := enqueuer.Enqueue("resque:queue:myQueueName", "Demo::Job", 1, 2, "test")
if err != nil {
fmt.Println("putting into queue failed error="+err.Error())
}else{
fmt.Println("putting into queue success")
}发布于 2020-05-14 19:42:33
我终于实现了这一点。分享步骤:
"github.com/kavu/go-resque",也可以安装驱动程序包,即您想要使用的redis包。有多种选择,例如:去-红色,戈迪斯,霍西,redisGo等,在我的情况下,我是去-雷迪斯。所以,我安装了
"github.com/kavu/go-resque/go-redis"
"github.com/go-redis/redis"rc := redisQueue.New("Your redis server IP")enqueuer := resque.NewRedisEnqueuer("redis-go", rc,"resque:")这里,第一个参数是驱动程序名,如godis、redis-go等。第二个参数是redis客户端,即Go-redis客户端或godis Client等。第三个参数是命名空间。这就是您想要在queueName中附加的内容。
NumPacketsInQueue, err = enqueuer.Enqueue(queueName,"",args1,args2...)上面代码行中的第二个空参数是作业类,我一直把它保持为空。
在这里,最后的队列名将是resque:queue:queueName
链接:
https://stackoverflow.com/questions/61773270
复制相似问题