问题描述
这是我的代码:
const Redis = require('ioredis');
const client = new Redis();
// multi set
client.mset({'key1': 'value1'});
问题是mset
操作是否像TTL
命令一样接受设置set
的选项?
//样本集
client.set(key,value,'EX',10);
解决方法
不,不是。 MSET
用于just
,用于为键设置多个值。正如您从implementation可以看到的那样,没有设置密钥过期的选项。另一变种MSETNX也不支持可选的到期时间。
您需要为EXPIRE
中设置的每个键执行MSET
命令。另一个选择是在事务中执行它们或完全丢弃MSET
,但对每个密钥使用SETEX
(或将SET
与EX
选项一起使用)。