javaweb程序如何重启自身?

请问我想在java代码中重启自己程序。有方法可以吗?


回答:

自己直接重启自己是做不到的,毕竟死人不会说话
最简单也最不靠谱的方式之一是死前留一个命令,过几秒后启动自己
稍微靠谱一些的方法是用PM2之类的工具,检测到进程死掉之后直接重启


回答:

自己写个工具类, 专门用于重启自己, 把 java 程序地址, 程序启动参数组织好. 主程序要退出的时候, 用ProcessBuilder启动子进程, 子进程再启动主进程.

public class ProcessRun {

public static void main(String[] args) throws Exception {

var pb = new ProcessBuilder("java", "主类", "其它参数");

pb.start();

Thread.sleep(1000);

System.out.println("主进程退出");

}

}


回答:

写个重启脚本就能重启了


回答:

一般程序自启的办法是

  1. 先把自己(或重启程序)A 拷贝一份到临时目录 B
  2. 启动临时目录下的程序 B(通过参数)来关闭当前程序 A
  3. B 在检查到 A 已经关闭之后,再进行一系列操作(比如更新)
  4. B 重启 A(或更新后的 A)
  5. B 把自己干掉(如果系统允许在运行结束即删除)或者通知启动起来的 A 结束并干掉自己


回答:

比较建议的是,使用 Docker 或者 Supervisor 这类工具,配置始终重启,然后在代码里面退出主进程, Docker 和 Supervisor 就会自动拉起来。


回答:

Spring Boot Actuator 了解下

以上是 javaweb程序如何重启自身? 的全部内容, 来源链接: utcz.com/p/944818.html

回到顶部