> shell编程 >

通过Shell命令脚本监听端口是否挂掉,重启端口

使用到swoole定时器功能,由于系统重启、系统负载过大程序被误杀等等原因,启用的端口关闭需要重新打开
 
端口监听脚本  vi /usr/local/Listen_port_9502.sh
 
#!/bin/bash
ListeningPort=`netstat -an | grep ":9502" | awk '$1 == "tcp" && $NF == "LISTEN" {print $0}' | wc -l`
if [ $ListeningPort -eq 0 ]
then
{
echo "`date` : listener port is down">>/www/wwwroot/default/swoole/data.log
# 如果9502端口down了,重启服务
 
/usr/bin/php /www/wwwroot/default/swoole/vip_cancel_server.php
 
 
}
else
{
 echo "`date` : 9502端口正常" >>/www/wwwroot/default/swoole/data.log
}
fi
给脚本执行权限  chmod +x  /usr/local/Listen_port_9502.sh
 
编写定时执行任务  crontab -e
 
这个设置默认1分钟监听执行一次
 
* * * * * sh /usr/local/Listen_port_9502.sh
这样每一分钟监听一次端口是否存活
 
执行  netstat -anp | grep 9502
 
如图: 端口重新打开
 



(责任编辑:IT)