задержка при чтении и записи в кластер Redis очень высока, чем ожидалось, и она не согласована, когда я пытаюсь подключиться к кластеру Redis Sharded с помощью библиотеки redis nodejs под названием «ioredis».например, когда я пытаюсь прочитать и записать около 100 пар ключ-значение, это занимает около 10-15 секунд.
Я установил кластер Redis Shaded с 6 узлами (3 master и 3 slave), который настроен в облаке (SCALEWAY CLOUD). Когда я пытаюсь читать и писать через redis-cli, это довольно быстро.Я наблюдаю несоответствие только через библиотеку узлов ioredis.
var ioredis = require('ioredis');
var sync = require('sync');
var redisCluster =new ioredis.Cluster([
{
host:"redis-server-1",
port:6379
},
{
host:"redis-server-2",
port:6379
},
{
host:"redis-server-3",
port:6379
},
{
host:"redis-server-4",
port:6379
},
{
host:"redis-server-5",
port:6379
},
{
host:"redis-server-6",
port:6379
}
]);
var startDate = new Date();
var total = 0;
//var total2 = 0;
for(var i = 0;i<10000;i++){
redisCluster.set("fookar"+i,"barkar"+i,function(err,res){
if(err){
console.log(err);
}
else{
var endDate = new Date();
var seconds = (endDate.getTime() - startDate.getTime()) / 1000;
total = total+seconds;
startDate = endDate;
console.log(total+"set");
}
});
}
for(var i = 0;i<10000;i++){
redisCluster.get("fookar"+i,function(err,res){
if(err){
console.log(err);
}
else{
var endDate2 = new Date();
var seconds = (endDate2.getTime() - startDate.getTime()) / 1000;
total = total+seconds;
startDate = endDate2;
console.log(total+"get");
}
});
}
Я ожидаю, что задержка будет в миллисекундах, поскольку она может обрабатывать миллионы транзакций в секунду.Это нормальное поведение, так как будут перенаправления на сервер, где ключ должен быть прочитан или записан, или мне нужно что-то настроить?