每次最后的停止log信息
18:38:13.089 [Thread-5] INFO o.s.b.c.e.AnnotationConfigEmbeddedWebApplicationContext - Closing org.springframework.boot.context.embedded.AnnotationConfigEmbeddedWebApplicationContext@47089e5f: startup date [Wed Aug 01 18:02:18 CST 2018]; root of context hierarchy
18:38:13.090 [Thread-5] INFO o.s.j.e.a.AnnotationMBeanExporter - Unregistering JMX-exposed beans on shutdown
18:38:13.091 [Thread-5] INFO o.s.j.e.a.AnnotationMBeanExporter - Unregistering JMX-exposed beans
18:38:13.096 [Thread-5] INFO c.alibaba.druid.pool.DruidDataSource - {dataSource-1} closed
反复观察了几天,一直怀疑是数据库装的有问题,但是排查并没有发现问题。
在这篇blog上找到了原因:https://blog.youkuaiyun.com/qq_31391283/article/details/81163590
做个实验:启动一下工程不要关闭终端访问没问题,把终端断开访问看看有没有问题,如果访问失败,再打开终端查看进程是否存在
如果断开服务器终端访问失败,并且重新打开终端进程不存在的话基本可以断定是启动方式的问题
原来的启动方式
java -jar xxx.jar
修改后的启动方式,在之前加上nohup
nohup java -jar xxx.jar
或者
java -jar xxx.jar &
原来项目启动后看起来似乎脱离终端了,其实还是受终端影响。大家引以为戒。
只要终端关了 服务就会停止。
把启动语句加上nohup后台运行就可以了。