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("主进程退出");
}
}
回答:
写个重启脚本就能重启了
回答:
一般程序自启的办法是
- 先把自己(或重启程序)A 拷贝一份到临时目录 B
- 启动临时目录下的程序 B(通过参数)来关闭当前程序 A
- B 在检查到 A 已经关闭之后,再进行一系列操作(比如更新)
- B 重启 A(或更新后的 A)
- B 把自己干掉(如果系统允许在运行结束即删除)或者通知启动起来的 A 结束并干掉自己
回答:
比较建议的是,使用 Docker 或者 Supervisor 这类工具,配置始终重启,然后在代码里面退出主进程, Docker 和 Supervisor 就会自动拉起来。
回答:
Spring Boot Actuator 了解下
以上是 javaweb程序如何重启自身? 的全部内容, 来源链接: utcz.com/p/944818.html