Redlock.net无法获取锁定

时间:2016-12-17 19:29:15

标签: redis stackexchange.redis redlock.net

使用:

StackExchange.Redis v1.1.608.0
RedLock.net v1.7.4.0

此代码在250-600ms后始终返回 false

var eps = new [] { new DnsEndPoint("localhost", 6379) };
var lf = new RedisLockFactory(eps);
var resource = "the-thing-we-are-locking-on";
var expiry = TimeSpan.FromSeconds(30);
using (var redisLock = lf.Create(resource, expiry))
{
    Response.Write("Lock acquired: " + redisLock.IsAcquired);
}

我正在努力解决原因,因为我能够使用StackExchange.Redis连接字符串localhost,allowAdmin=true在Redis中缓存内容。

Redis控制台中,我可以看到客户端正在连接,但就此而言。

我为端口6379添加了防火墙规则,但没有任何改变。

我的锁定上的任何想法都永远无法获得?

1 个答案:

答案 0 :(得分:0)

找到问题的原因。我正在使用MSOpenTech Redis服务器v3.2.100: https://github.com/MSOpenTech/redis/releases

回滚到v3.0.500似乎可以解决问题。不太理想,但在测试环境中现在应该没问题。