use*_*323 5 java jvm amazon-web-services
我制作了一个Java程序并将其作为一个jar文件.我想让它在我的AWS上全天候运行.我在注销后使用一个名为screen的应用程序来保持运行.我用这个命令:
screen java -jar my_app.jar
Run Code Online (Sandbox Code Playgroud)
但它不能一直运行.它运行一两天后就会停止.我保留了一个日志,我没有发现任何异常终止它.我想知道JVM是否会因为任何原因(例如高内存使用率)而终止我的应用程序?JVM是否保留日志?我在哪里可以找到JVM的日志?我必须让我的应用程序成为deamon吗?如果必须,怎么样?
不,保持Java应用程序运行没有什么特别之处.只需要至少有一个非守护程序线程仍处于活动状态.例如,这是一个永远运行的完整程序:
public class Forever {
public static void main(String[] args) throws InterruptedException {
while (true) { Thread.sleep(1000); }
}
}
Run Code Online (Sandbox Code Playgroud)
如果你的应用程序正在死亡,那是因为某处出现了一些错误.确保检查正在写入的任何日志以及进程的stdout和stderr以查找原因.
| 归档时间: |
|
| 查看次数: |
3644 次 |
| 最近记录: |