Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/redis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用.net StackExchange.Redis和;“等等”;isn';他没有按预期工作_Redis_Wait_Stackexchange.redis - Fatal编程技术网

使用.net StackExchange.Redis和;“等等”;isn';他没有按预期工作

使用.net StackExchange.Redis和;“等等”;isn';他没有按预期工作,redis,wait,stackexchange.redis,Redis,Wait,Stackexchange.redis,使用redis群集(服务器)进行R/W测试:1个主服务器+2个从服务器。以下是密钥写入代码: var trans = redisDatabase.CreateTransaction(); Task<bool> setResult = trans.StringSetAsync(key, serializedValue, TimeSpan.FromSeconds(10)); Task<RedisResult> waitResult = trans.ExecuteAsync("

使用redis群集(服务器)进行R/W测试:1个主服务器+2个从服务器。以下是密钥写入代码:

var trans = redisDatabase.CreateTransaction();
Task<bool> setResult = trans.StringSetAsync(key, serializedValue, TimeSpan.FromSeconds(10));
Task<RedisResult> waitResult = trans.ExecuteAsync("wait", 3, 10000);
trans.Execute();
trans.WaitAll(setResult, waitResult);
运行100个线程,执行以下步骤的1000个循环:

  • 生成GUID作为键,随机作为1024字节的值
  • 编写密钥(使用上述代码)
  • 使用“var stringValue”检索键= redisDatabase.StringGet(键,CommandFlags.PreferSlave)
  • 比较这两个值,如果它们不同,则打印错误
  • 运行此测试几次会产生几个错误-尝试理解为什么“等待”(10秒!)操作应该保证在返回之前写入所有从属设备


    有什么想法吗?

    等待
    不受SE.Redis的支持,正如其多产作者在

    上所解释的那样,你确实有,它们铭刻在我的心中,因此我可以引用它们
    [server1 ip]:6379,[server2 ip]:6379,[server3 ip]:6379,ssl=False,abortConnect=False