【发布时间】:2015-08-13 05:29:12
【问题描述】:
我正在使用如下的 nohup 命令运行 websocket 服务器。
nohup php -q chat-server.php > ratchet_ws.log &
但它在几个小时后停止工作。所以我创建了一个如下所示的 bash 脚本
#!/bin/bash
while true
do
if pgrep php > /dev/null
then
echo "Running"
else
cd /..path../
nohup php -q chat-server.php > ratchet_ws.log &
fi
sleep 1;
done
然后我使用下面的命令运行脚本,如下所示。
nohup sh chk_process.sh > chk_process.log &
上述脚本的工作是否检查我的chat-server.php是否正在运行,如果它没有运行,那么它将再次启动它。
if pgrep php > /dev/null
但是这一行正在检查任何 php 进程是否正在运行。但我希望它只检查我的 chat-server.php。
【问题讨论】:
-
请注意,您正在检查进程是否正在运行,但正在运行的进程并不总是健康的进程,也不是响应式的进程。我建议您也尝试连接到该服务。
标签: linux bash websocket ratchet