Java 端口号被重复使用了怎么办?


1. 问题

  • 端口号被重复使用了怎么办?

2. 解答

  • 一个进程可能多个端口,进程是一定会用端口的,没有端口,进程就不能执行,换句话说,如果端口号被另外一个服务或应用所占用,会导致当前程序启动失败;
  • 为了避免端口被重复使用,一般使用掷骰子的办法跳过已占用的端口;
  • 为了使用已占用的端口,可以关掉使用它的进程,具体操作如下:
    • 打开 CMD,输入 netstat -ano | findstr 端口号 查看指定端口号的使用情况,或者输入 netstat -ano 查看所有端口的使用情况;
      在这里插入图片描述
    • 查到 PID(Process Identification) 后,输入 taskkill /pid 进程ID /f 或者 taskkill -pid 进程ID -f 关闭端口号;
  • 注意:TCP 和 UDP 的端口号可以重复使用,因为 TCP 和 UDP 的端口是独立的:
    - 当目的主机收到一个以太网数据帧时,数据就开始从协议中由底部上升,同时去掉上层协议加上的报文首部。每层协议盒都要去检查报文首部中的协议标识,以确定接收数据的上层协议。这个过程称作分用(Demultiplexing),过程图如下:
    在这里插入图片描述
发布了310 篇原创文章 · 获赞 315 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/Regino/article/details/105132678
今日推荐