1

除非我遗漏了什么,否则我看不到允许您设置多个过期键的多重设置/添加重载。

var conn = new RedisConnection("server");

Dictionary<string,string> keyvals;

conn.Strings.Set(0,keyvals,expiration);

甚至通过多个操作来完成

conn.Strings.Set(0,keyvals);
conn.Expire(keyvals.Keys,expiration);
4

2 回答 2

1

不存在这样的 redis 操作 - expire不是可变的。但是,由于 api 是流水线的,只需多次调用该方法即可。如果您想确保绝对的最佳性能,您可以在执行此操作时暂停急切的套接字刷新:

conn.SuspendFlush();
try {
    foreach(...)
        conn.Keys.Expire(...);
} finally {
    conn.ResumeFlush();
}
于 2013-12-11T22:25:29.643 回答
0

这是我的方法:

var expireTime = ...
var batchOp = redisCache.CreateBatch();
foreach (...) {
    batchOp.StringSetAsync(key, value, expireTime);
}
batchOp.Execute();
于 2014-07-23T23:28:33.900 回答