问题描述
在一次部署的时候,遇到使用windows系统作为服务器的,按照正常的方式是打开doc
窗口,定位到对应jar包所在的目录,直接使用java -jar
运行jar包。
java -jar xxx.jar
后来就出现了灵异事件,刚启动的时候运行的还是好好的,但是过一段时间,通过远程请求这个服务就发现一直出现请求超时。检查网络、端口都是通的,证明这个服务是运行正常的。后来经过问题的排查和咨询其他有windows部署经验的同事才发现问题。
问题所在
当在windows系统运行jar包服务时,使用doc
窗口直接通过java -jar xxx.jar
带来的两个弊端:
- 一个
doc
窗口只能运行一个服务,如果需要另外部署其他服务,需要再开一个doc
窗口 - 服务会出现假死状态,网络、端口是通的,就是访问一直出现超时的问题
解决方案
解决也是非常简单的,将java -jar xxx.jar
换成javaw -jar xxx.jar
即可。
javaw -jar xxx.jar
这样让运行的服务在后台运行,另外只需要开一个doc
窗口即可执行多次启动服务的命令。把上面存在的两个问题都可以解决掉。