redis: ошибка при множественных коннектах-дисконнектах, которые происходят с частотой в 1 секунду
Хочу потестить устойчивость работы локального redis сервера, написал простенькие скрипты на js и php
javascript:
setInterval(function()
{
$.ajax(
{
url: "/connector.php",
cache: false,
type: "post",
async: true,
success: function(data, textStatus)
{
},
error: function(data, textStatus)
{
}
});
}, 1000);
connector.php:
$redis_host = "ip";
$redis_port = "port";
$redis_password = "password";
$redis_ttl = null;
$r = new Redis();
try
{
$r->connect($redis_host, $redis_port, 2);
}
catch(RedisException $e)
{
$f = fopen("!report", "a");
if(flock($f, LOCK_EX))
fwrite($f, $_GET["ex"].": ".$e."\n\n");
fclose($f);
}
$r->close();
затем открываю несколько вкладок и с каждой запускаю. Некоторое произвольное время все нормально коннектится-стопарится-коннектится-стопарится, а потом в лог (иногда) падает вот такая штука:
RedisException: Попытка установить соединение была безуспешной, т.к. от другого компьютера за требуемое время не получен нужный отклик, или было разорвано уже установленное соединение из-за неверного отклика уже подключенного компьютера. in \connector.php:13 Stack trace: #0 \connector.php(13): Redis->connect('ip', 'port', 2) #1 {main}
А затем все дальше нормально работает
Канал 200 мб, сервак не мощный (NAS), но абсолютно не загруженный, для чистоты эксперимента, только редис там крутится и еще пару служб, которые не мешаются. Можно ли как то с моей проблемой справиться, что делать?
Спасибо
UPD. Redis сервер вначале поднял как штатное ПО Synology, затем развернуд Docker и в контейнере запустил - проблема везде остается