Redis StackExchange SortedSetAddAsync一次调用已过期

时间:2018-10-26 01:04:28

标签: c# stackexchange.redis

我试图添加一个SortedSet项,且其密钥到期。有没有比2个电话更好的方法了? 这是我目前正在使用的:

    private IDatabase GetDataBase()
    {
        return this.GetLeastBusyMultiplexer().GetDatabase();
    }

    private ConnectionMultiplexer GetLeastBusyMultiplexer()
    {
        var leastBusyMultiplexer = this.Multiplexers.Aggregate((min, next) =>
        {
            if (min == null || next.Value.GetCounters().TotalOutstanding < min.Value.GetCounters().TotalOutstanding)
            {
                return next;
            }

            return min;
        });

        return leastBusyMultiplexer.Value;
    }`

在这里添加到数据库:

 var RedisDatabase = GetDataBase();
 RedisDatabase.SortedSetAddAsync(key, sortedSetEntry,whenNotExists)).ConfigureAwait(false);
 RedisDatabase.KeyExpireAsync(key, ttlValue).ConfigureAwait(false);

1 个答案:

答案 0 :(得分:1)

如果您担心比赛条件,请尝试transaction or lua script