一、介紹
在centos7.5,運行一個springboot寫的服務,只需運行一份,于是直接通過Java命令直接運行在系統中。并通過Cron監控這個服務的進程。
二、Cron設置
執行crontab -e
#設置1分鐘執行1次
*/1 * * * * /bin/bash /home/es_java/cron_es.sh
三、cron_es.sh
#!/bin/bash
pid=$(ps -ef | grep 'java -jar /home/es_java/spyesoper.jar --spring.data.elasticsearch.host=192.168.0.143' | grep -v grep | awk '{print $2}')
if [ -n "$pid" ]; then
echo "running...."
else
echo begin `date '+%Y%m%d %H:%S:%M'`
/bin/bash /home/es_java/restart.sh
fi
主要原理就是檢查相應的進程是否存在,如果不存在就啟動相應進程