php エディター Zimo は、go-redis v8 の XAutoClaim 機能が Redis サーバー v7 と互換性がないという重要な問題を紹介するためにここにいます。 go-redis は人気のある Golang Redis クライアント ライブラリであり、XAutoClaim はその最新バージョンの新機能であり、Redis キューにタスクを自動的に割り当てるために使用できることがわかります。しかし、この機能を使用すると、Redis サーバー v7 と互換性がないことが判明し、正常に動作しませんでした。この問題は、go-redis を使用する開発者に何らかの問題を引き起こす可能性があるため、この互換性の問題を解決する解決策を見つける必要があります。
redis v7 サーバー インスタンスで go-redis v8 を使用しています。私の知る限り、XAutoClaim
コマンドには互換性がありません。
client.XAutoClaim
返されたエラー: 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 サーバー v7 以降と互換性がありませんの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。