
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中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号