从 Redis 服务器检索和删除单个调用中的密钥

Retrieving and deleting a key in single call from Redis server

对于一个用例,我想在一次调用中从 Redis 服务器检索时删除一个密钥,即密钥是一次性使用的。我正在使用生菜库连接到 redis 服务器。

redis 端是否有任何可用的特定配置或我可以使用的任何特定 lettuce API?我的示例代码如下所示。

RedisAsyncCommands<String, String> command = notificationConnection.async();
CompletionStage<String> result = command.get(id)

生菜:5.2.2

Redis: 5.0.8

谢谢,

阿肖克

没有一个命令可以同时执行这两项操作。您的库可能有一种方法可以同时执行这两项操作,但 Redis 将收到两个命令。如果你希望它是原子的,你要么用 multi/exec 覆盖你的命令,要么使用 lua script。下面是使用 redis 的交易示例。

127.0.0.1:6379> multi
OK
127.0.0.1:6379> get a
QUEUED
127.0.0.1:6379> del a
QUEUED
127.0.0.1:6379> exec
1) "b" -> result of get
2) (integer) 1 -> result of del