springboot jar指定端口(windows系统下重启springboot项目时,提示端口被占用,却找不到占用端口的程序,已启动的项目报No buffer space available异常)
先说结果 ,最终问题解决了 ,参照https://blog.csdn.net/liu_005/article/details/83443790这位大佬的方式进行解决的 ,非常感谢
项目环境:WindowsServer系统 ,springboot项目
出现的问题:项目访问后台接口的时候变的非常慢 ,甚至都超过前端设定的超时时长
(2分钟) ,都没有返回结果 ,起初以为是程序因为长时间开启 ,导致内存满了 ,就想着结束其中一个项目 ,重启一下 ,看看效果 ,结果项目停止后就起不起来了,只要启动就报端口被占用 ,可是根据端口号去查询的时候发现 ,端口根本就没有被占用,后来无论修改成什么端口 ,都提示端口被占用 ,人麻了 ,这是见鬼了?解决过程:其实也没什么主要的过程 ,因为重启项目一直在报端口被占用的错误 ,所以查找方向一直都是springboot项目启动时报端口被占用 ,但是根据端口却找不到被占用的端口 ,当然 ,这个方向是错误的 ,找了一圈 ,都没有合适的解决方式 ,幸亏当时准备重启的时候 ,没有把所有项目都停了,在偶然间 ,发现一个启动中的项目报异常了 ,这个异常就是No buffer space available
解决步骤:根据这个异常,在经过查找后 ,根据https://blog.csdn.net/liu_005/article/details/83443790这位大佬的解释 ,才发现原来是端口不够用了 ,根据他的步骤 ,终于将问题解决了
首先打开cmd命令窗口输入:netsh int ipv4 show dynamicportrange tcp来查看 ,具体如下:
然后通过命令netsh int ipv4 set dynamicport tcp start=2000 num=63000修改端口数 。
其中:
start为起始端口号
num为端口数量最终在不用重启电脑的情况下 ,终于将这个问题解决了 ,后来根据这个问题 ,我又往下查了查 ,除了端口被占用 ,根据端口找不到被占用的端口这个问题是端口不够用引起的 ,访问速度变慢有可能也是这个原因引起的 。
对于这个问题 ,目前我只是知其然,不知其所以然 ,只知道解决了 ,却不知道问题的根本原因是在哪,如果各路大神有知道怎么排查的 ,还望不吝赐教一下
创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!