为了账号安全,请及时绑定邮箱和手机立即绑定

需要帮助从 Go 消费者将数据排入 Redis 队列

需要帮助从 Go 消费者将数据排入 Redis 队列

Go
慕田峪9158850 2022-06-01 18:04:52
我正在尝试从我的 Go Consumer 将数据推送到 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")  }
查看完整描述

1 回答

?
守着一只汪

TA贡献1872条经验 获得超3个赞

我终于能够实现这一点。分享步骤:

  1. 安装包 Resque 包:"github.com/kavu/go-resque" 另外,安装驱动程序包,即你希望 resque 使用的 redis 包。有多种选择,例如:Go-redis、Godis、hoisie、redisGo 等。就我而言,我是Go-Redis。所以,我安装了

    "github.com/kavu/go-resque/go-redis"

    "github.com/go-redis/redis"

  2. 然后设置redis Client

    rc := redisQueue.New("Your redis server IP")

  3. 设置 resque 结构

    enqueuer := resque.NewRedisEnqueuer("redis-go", rc,"resque:")

这里,第一个参数是驱动程序名称,如 godis、redis-go 等。第二个参数是 redis 客户端,即 Go-redis 客户端或 godis 客户端等。第三个参数是命名空间。这就是您要在 queueName 中附加的内容。

  1. 然后将数据包排入队列

    NumPacketsInQueue, err = enqueuer.Enqueue(queueName,"",args1,args2...)

上面代码行中的第二个空参数是作业类。我将其保留为空。

在这里,最终的队列名称将是 resque:queue:queueName


查看完整回答
反对 回复 2022-06-01
  • 1 回答
  • 0 关注
  • 108 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信