linux坚持端口占用,彻底解决Linux端口被占用问题

端口被占用这个问题是我们在开发中会比较常见到的问题。

网络上比较普遍的答案会告诉你这样去解决。首先通过一下命令查询是有进程在使用特定的端口查找占用进程的PIDkill掉该进程

大部分情况下这样操作是可以解决问题的,但是最近就是遇到一个情况。

偶尔出现Redis\Mysql数据库由于一些原因自身挂掉了,然后服务器还运行了其他守护进程,守护进程Supervisor在自动重启其管理的守护进程时,就出现了占用Redis 6300端口 或 Mysql 3306 端口的情况,然而 守护进程中也有进程Mysql数据库连接的操作,Mysql连接不上导致程序也报错,守护进程也不断报错异常退出,

如此进入到一个死循环阶段。

经细查原因分析如下:

- Mysql数据库挂掉后,3306端口被系统闲置

- PHP守护进程中数据连接出问题,进程挂掉再次重连时发现3306端口空闲,于是系统给分配3306 端口给该守护进程

- Mysql自身重连时发现3306已被占用,无法再次启动

- PHP守护进程中连接Mysql一直连接不上,一直保持异常,直到进程退出不再重启

- ......

于是我猜想,Linux系统能不能不把3306,6300 作为空闲端口来分配呢? 答案是:可以的。

这里有两个配置:

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值