php小編子墨在這裡向大家介紹一個重要的問題,即go-redis v8的XAutoClaim功能與Redis伺服器v7 不相容的情況。據了解,go-redis是一個受歡迎的Golang Redis客戶端程式庫,而XAutoClaim是其最新版本中新增的功能,可以用於在Redis佇列中自動分配任務。然而,使用這個功能時,發現它與Redis伺服器v7 不相容,導致無法正常運作。這個問題可能會給使用go-redis的開發者帶來一些困擾,因此我們需要找到解決方案來解決這個相容性問題。
我正在對 redis v7 伺服器實例使用 go-redis v8。據我所知, XAutoClaim
指令不相容。
client.XAutoClaim
回傳錯誤:got 3,想要 2
。
XAutoClaim 上的官方 go-redis/v8 文件並沒有提及與 redis 版本 7 的不相容性。
ctx := context.Background() streamName := "test-stream" groupName := "test-group" rdb := redis.NewClient(&redis.Options{ Addr: "localhost:6379", Password: "", // no password set DB: 0, // use default DB }) defer rdb.FlushDB(ctx).Err() // Add message to stream rdb.XAdd(ctx, &redis.XAddArgs{ Stream: streamName, Values: map[string]interface{}{"key": "value"}, }) // Create consumer group rdb.XGroupCreateMkStream(ctx, streamName, groupName, "0") autoclaimError := rdb.XAutoClaim(ctx, &redis.XAutoClaimArgs{ Stream: streamName, Group: groupName, Consumer: "test-consumer", MinIdle: 0, Start: "-", Count: 1, }).Err() print(autoclaimError.Error())
go-redis v8 XAutoClaim 與 Redis 版本 7 不相容。雖然這個問題沒有正式記錄,但這裡有一個關於此事的問題:https:// /github.com/redis/go-redis/issues/2106。
以上是go-redis v8 XAutoClaim 與 Redis 伺服器 v7+ 不相容的詳細內容。更多資訊請關注PHP中文網其他相關文章!