как установить тайм-аут для команды redis-cli?

У меня есть проверка работоспособности, которую я пытаюсь использовать, которая удаленно выполняет команду redis-cli с серверов redis на redis-sentinels.

redis-cli -h 10.10.10.10 -p 26379 SENTINEL MASTER testing

Есть логика, которая выясняет, есть ли кворум, и все работает нормально, если сетевой интерфейс дозорного недоступен. В этом случае команда redis-cli зависает на неопределенное время, и проверка работоспособности завершается сбоем, хотя есть два работоспособных сигнальных сервера с кворумом.

Кажется, я не могу найти способ установить тайм-аут для redis-cli на стороне клиента, чтобы предотвратить его зависание. Есть ли способ сделать это с помощью redis-cli или мне придется выйти за пределы команды, чтобы убедиться, что она не зависает на неопределенный срок?


person numb3rs1x    schedule 07.07.2016    source источник


Ответы (1)


Я решил использовать команду timeout для переноса команды redis-cli. Кажется, это работает очень хорошо для моих целей!

timeout 3 redis-cli -h 10.10.10.10 -p 26379 SENTINEL MASTER testing
person numb3rs1x    schedule 07.07.2016