Bash:確認し、実行されていない場合はプロセスを実行します
こんにちは、私の要件は、Memcacheサーバーが本番環境で何らかの理由でダウンした場合、すぐに再起動したいということです
通常、以下に示すように、レプリケーションを使用するユーザーがいない場合は、この方法でMemcacheサーバーを起動します。
memcached -u nobody -l 192.168.1.1 -m 2076 -x 192.168.1.2 -v
したがって、このために、この方法でcrontabにエントリを追加しました
(crontab -e)
*/5 * * * * /home/memcached/memcached_autostart.sh
memcached_autostart.sh
#!/bin/bash
ps -eaf | grep 11211 | grep memcached
# if not found - equals to 1, start it
if [ $? -eq 1 ]
then
memcached -u nobody -l 192.168.1.1 -m 2076 -x 192.168.1.2 -v
else
echo "eq 0 - memcache running - do nothing"
fi
私の質問はmemcached_autostart.sh内にあり、memcachedサーバーを自動再起動するために、上記のスクリプトに問題はありますか?
または
(cronジョブを使用するのではなく)これを達成するためのより良いアプローチがある場合は、 あなたの経験を共有してください。