Editor PHP Zimo di sini untuk memperkenalkan kepada anda satu isu penting, iaitu, fungsi XAutoClaim go-redis v8 tidak serasi dengan pelayan Redis v7+. Difahamkan bahawa go-redis ialah perpustakaan pelanggan Golang Redis yang popular, dan XAutoClaim ialah ciri baharu dalam versi terbaharunya, yang boleh digunakan untuk memperuntukkan tugas secara automatik dalam baris gilir Redis. Walau bagaimanapun, apabila menggunakan fungsi ini, didapati ia tidak serasi dengan pelayan Redis v7+, menyebabkan ia tidak berfungsi dengan baik. Masalah ini mungkin menyebabkan beberapa masalah kepada pembangun menggunakan go-redis, jadi kami perlu mencari penyelesaian untuk menyelesaikan isu keserasian ini.
Saya menggunakan go-redis v8 dengan instance pelayan redis v7. Setahu saya, arahan XAutoClaim
tidak serasi.
client.XAutoClaim
返回错误:got 3,想要 2
.
Dokumentasi rasmi go-redis/v8 pada XAutoClaim tidak menyebut tentang ketidakserasian dengan redis versi 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 tidak serasi dengan Redis versi 7+. Walaupun isu ini tidak didokumenkan secara rasmi, terdapat isu mengenainya di sini: https:///github.com/redis/go-redis/issues/2106.
Atas ialah kandungan terperinci go-redis v8 XAutoClaim tidak serasi dengan pelayan Redis v7+. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!