我必须通过 SSH 登录到服务器并在包含大约 50GB 的海量数据的目录上运行我的 java 程序。根据我的计算,在海量数据上运行我的代码大约需要 6 个小时。有什么方法可以让服务器运行我的 java 程序,这样即使我与服务器断开连接,运行我的代码也不会出现任何问题?提前致谢!
问问题
605 次
4 回答
2
您可以在其中启动一个会话screen
并在其中运行您的 Java 进程。然后您可以分离它并断开您的 SSH 会话并稍后重新加入以检查进度。
于 2013-07-12T08:03:02.507 回答
0
如果当然不需要用户交互,您可以使用 Java 包装器来像服务一样运行您的 Java 程序。这是自动化批处理引擎、JBoss 等应用程序服务器的启动/停止/ping 状态的方法。
这是在某些产品中使用的好方法http://wrapper.tanukisoftware.com/doc/english/download.jsp
于 2013-07-12T06:43:01.333 回答
0
我建议您使用 screen(请参阅 erik ekman),但也有 nohup:
于 2013-07-12T10:03:50.377 回答
0
启动它nohup java -jar path/to/your.jar
,完成后按 id 杀死进程。或编写 bash 脚本
于 2015-12-21T18:31:25.743 回答