Я хочу создать задание cron, которое будет запускать redis каждые 30 минут, если оно еще не запущено, но я не знаю, что мне делать.
Я знаю, что начало должно выглядеть так */30 * * * */<some path to redis-server file>
.
Я хочу создать это задание cron, потому что его запускать redis через ./redis-server
каждый раз вылетает.
Я понял, что он вылетает, потому что мое использование памяти было немного превышено. Спасибо за вашу помощь.
Ответ: сосредоточиться на причинах сбоя - это правильно. На будущее, если кто-то ищет способ выполнить cron для проверки работающего приложения и запустить его, если это не так, я всегда делал это с помощью сценария bash. Например:
#!/bin/bash
# Check if httpd is running
if pgrep "httpd" > /dev/null
then
echo "Running"
else
/etc/init.d/httpd start
fi
Затем вы можете cron скрипт bash даже каждую минуту. Это простая версия. Я также предлагаю регистрировать перезапуски в скрипте, чтобы помочь вам отследить, когда ваше приложение вылетает, чтобы вы могли просматривать журналы.