Linux查询端口Close_WAIT并释放

1、查询当前应用端口所对应的未释放连接数

2、如果连接数大于阈值 调用 jstack释放

3、休眠5秒

4、继续检测下一应用

cd /usr/local/nacos/bin/logs
currenttime=`date '+%Y年%m月%d日   %H时%M分%S秒'`
#数据库连接池数量
db_num=`netstat -an|grep 3306|wc -l`
echo "数据库端口占用${db_num}"
echo `netstat -an|grep 3306`
#检测端口数量
num=`netstat -an|grep 9001|grep CLOSE_WAIT|wc -l`
echo "API当前端口占用${num}"
if [ ${num} -ge 20 ]; then
pid=`ps -ef |grep -v grep|grep app-service-prod.jar |grep java |awk '{print $2}'`
if [ ! -n "${pid}" ]; then
echo "current pid is null,please start API 接口程序"
else
echo "current pid is ${pid}"
/usr/local/jdk1.8/bin/jstack -F ${pid} > jstack_api.log 
fi

else
echo "API 接口程序应用正常"
fi

sleep 5

echo "开始检测8582应用程序"

 

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值