使用Redis集群(服务器)进行R / W测试:1个主设备+ 2个从设备。以下是主要的WRITE代码:
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);
使用以下内容作为连接字符串:
[server1 ip]:6379,[server2 ip]:6379,[server3 ip]:6379,ssl=False,abortConnect=False
运行100个线程,这些线程执行以下步骤的1000次循环:
多次运行该测试会产生一些错误-试图理解为什么“等待”(10秒!)操作应保证在返回之前写入所有从站。
有什么主意吗?