【端口占用】无法在地址[localhost]和端口[9005]上创建服务器关闭套接字(基本端口[9005]和偏移量[0])

简介: 一直提示端口占用怎么解决?

06-Nov-2021 10:24:46.078 严重 [main] org.apache.catalina.core.StandardServer.await 无法在地址[localhost]和端口[9005]上创建服务器关闭套接字(基本端口[9005]和偏移量[0])
java.net.BindException: Address already in use: bind
at java.base/sun.nio.ch.Net.bind0(Native Method)
at java.base/sun.nio.ch.Net.bind(Net.java:550)
at java.base/sun.nio.ch.Net.bind(Net.java:539)
at java.base/sun.nio.ch.NioSocketImpl.bind(NioSocketImpl.java:643)
at java.base/java.net.ServerSocket.bind(ServerSocket.java:396)
at java.base/java.net.ServerSocket.(ServerSocket.java:282)
at org.apache.catalina.core.StandardServer.await(StandardServer.java:584)
at org.apache.catalina.startup.Catalina.await(Catalina.java:864)
at org.apache.catalina.startup.Catalina.start(Catalina.java:810)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:64)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:564)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:342)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:473)
06-Nov-2021 10:24:46.088 信息 [main] org.apache.coyote.AbstractProtocol.pause 暂停ProtocolHandler["http-nio-8081"]
06-Nov-2021 10:24:46.089 信息 [main] org.apache.catalina.core.StandardService.stopInternal 正在停止服务[Catalina]
06-Nov-2021 10:24:46.178 警告 [main] org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesThreads Web应用程序[lyzy-0.0.1-SNAPSHOT]似乎启动了一个名为[logback-1]的线程,但未能停止它。这很可能会造成内存泄漏。线程的堆栈跟踪:[]
06-Nov-2021 10:24:46.184 信息 [main] org.apache.coyote.AbstractProtocol.stop 正在停止ProtocolHandler ["http-nio-8081"]
06-Nov-2021 10:24:46.214 信息 [main] org.apache.coyote.AbstractProtocol.destroy 正在摧毁协议处理器 ["http-nio-8081"]
QQ截图20211106103821.png

具体错误代码如上:这是在服务器上,我用了一个Tomcat端口号被占用的情况,我启动了另一个版本的tomcat,然后部署软件报如上错误,所以,在部署的时候一定看好报错端口号,然后使用以下经常用的命令进行查找。然后kill进程就成功了!

【一定一定看报错端口号!!!】

  1. 查看端口占用

在windows命令行窗口下执行:

netstat -aon|findstr "8080"

TCP 127.0.0.1:80 0.0.0.0:0 LISTENING 2448

端口“8080”被PID(进程号)为2448的进程占用。

查看端口“8080”被哪个应用占用,,继续执行下面命令:

tasklist|findstr "2448"

tomcat9.exe 2016 Console 0 16,064 K

  1. 关闭进程

2.1 按进程号关闭进程
taskkill /pid 2152

多个时格式为:

taskkill /pid 2152 /pid 1284

2.2 按进程名关闭进程
如要关闭notepad.exe,格式为:

taskkill /im notepad.exe

指定多个时格式为:

taskkill /im notepad.exe /im iexplorer.exe

如果是要关闭所有的,则使用通配符*,即:

taskkill /im *.exe

2.3 有提示的关闭进程
taskkill /t /im notepad.exe
taskkill /t /pid 2152

这个效果是提示后在使用者确定后关闭,有提示框。

2.4 强行终止进程
taskkill /f /im notepad.exe
taskkill /f /pid 2152

  1. 端口状态

3.1 LISTENING状态
FTP服务启动后首先处于侦听(LISTENING)状态。

3.2 ESTABLISHED状态
ESTABLISHED的意思是建立连接。表示两台机器正在通信。

3.3 CLOSE_WAIT
对方主动关闭连接或者网络异常导致连接中断,这时我方的状态会变成CLOSE_WAIT 此时我方要调用close()来使得连接正确关闭

3.4 TIME_WAIT
我方主动调用close()断开连接,收到对方确认后状态变为TIME_WAIT。TCP协议规定TIME_WAIT状态会一直持续2MSL(即两倍的分段最大生存期),以此来确保旧的连接状态不会对新连接产生影响。处于TIME_WAIT状态的连接占用的资源不会被内核释放,所以作为服务器,在可能的情况下,尽量不要主动断开连接,以减少TIME_WAIT状态造成的资源浪费。

目前有一种避免TIME_WAIT资源浪费的方法,就是关闭socket的LINGER选项。但这种做法是TCP协议不推荐使用的,在某些情况下这个操作可能会带来错误。

3.5 SYN_SENT状态
SYN_SENT状态表示请求连接,当你要访问其它的计算机的服务时首先要发个同步信号给该端口,此时状态为SYN_SENT,如果连接成功了就变为ESTABLISHED,此时SYN_SENT状态非常短暂。但如果发现SYN_SENT非常多且在向不同的机器发出,那你的机器可能中了冲击波或震荡波之类的病毒了。这类病毒为了感染别的计算机,它就要扫描别的计算机,在扫描的过程中对每个要扫描的计算机都要发出了同步请求,这也是出现许多SYN_SENT的原因。

参考部分文章:https://www.cnblogs.com/rainman/p/3457227.html

目录
打赏
0
0
0
0
315
分享
相关文章
Windows服务器80端口被占用的全面解决方案
在服务管理器中启动apache2服务,即可正常使用80端口。若系统中还安装了其他微软产品如sql等,也可尝试停止其服务进行测试,但请注意,SQL通常不会使用80端口,因此一般不会受到影响。以上就是关于80端口被system占用的详细解决方法,希望对你有所帮助。
云服务器怎么开启被关闭的端口?手把手教你开启端口
在使用云服务器时,若发现某些服务无法访问,可能是端口被关闭。本文介绍了端口关闭的原因、检查方法及开启步骤。原因包括初始设置限制、防火墙规则和外部网络策略;可通过netstat或ss命令检查端口状态,用ufw、iptables或firewalld调整防火墙规则。最后提供了解决常见问题的建议,确保端口正常开放并可供外网访问。
829 9
【转】如何配置服务器的端口映射?
本文详解端口映射原理及配置方法,涵盖家庭、企业与云环境,包含静态、动态与双向映射类型,并提供常见问题解决方案。
122 6
网关服务器配置指南:实现自动DHCP地址分配、HTTP服务和SSH无密码登录。
哇哈哈,道具都准备好了,咱们的魔术秀就要开始了。现在,你的网关服务器已经魔法满满,自动分配IP,提供网页服务,SSH登录如入无人之境。而整个世界,只会知道效果,不会知道是你在幕后操控一切。这就是真正的数字世界魔法师,随手拈来,手到擒来。
99 14
在Linux服务器中遇到的立即重启后的绑定错误:地址已被使用问题解决
总的来说,解决"地址已被使用"的问题需要理解Linux的网络资源管理机制,选择合适的套接字选项,以及合适的时间点进行服务重启。以上就是对“立即重启后的绑定错误:地址已被使用问题”的全面解答。希望可以帮你解决问题。
212 20
DNS服务器地址大全
DNS(域名系统)是互联网的“电话簿”,将域名解析为IP地址。选择优质DNS服务器可提升网络速度、降低延迟。以下是全球及中国各运营商的DNS服务器列表,包括公共DNS(如Google DNS、Cloudflare DNS)、中国电信、联通、移动等。根据地理位置、稳定性、安全性与隐私保护等因素选择适合的DNS服务器,优化上网体验。
5734 6
云服务器常用端口作用
了解云服务器常用端口的作用有助于高效管理资源、快速定位问题及更好地使用云服务。常见端口包括:21(FTP,文件传输)、22(SSH,远程连接Linux)、25(SMTP,发送邮件)、80(HTTP,网页服务)、110/143(POP3/IMAP,接收邮件)、443(HTTPS,加密网页)、1433(SQL Server)、3306(MySQL)、3389(RDP,远程访问Windows桌面)和8080(代理服务)。
199 2
阿里云国际站:阿里云服务器端口配置
悟空云@CloudWuKong阿里云是全球领先的云计算服务提供商,为用户提供弹性计算、数据库、存储、网络安全等一系列云计算服务。在使用阿里云服务器时,合理配置端口非常重要,可以提高服务器安全性和稳定性。
阿里云2核4G5M带宽199元云服务器测评:价格、性能、适用场景与续费优势详解
阿里云目前活动中推出的“2核4G5M带宽199元1年”云服务器,是当下深受初创企业用户喜爱的云服务器。本文将从价格优势、性能优势和续费优势等几个方面,详细解析这款阿里云199元云服务器的各项特点,帮助大家更好地了解这款云服务器的性能和应用场景,以供选择参考。

热门文章

最新文章

AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等

登录插画

登录以查看您的控制台资源

管理云资源
状态一览
快捷访问