Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
如果我们有一个 RMI 服务器应用程序,它通过 autosys 永久运行,然后在夜间关闭几个小时,如果应用程序是从命令行启动的,我们如何发送关闭消息。
例如,我们使用 jar 启动java -jar server.jar,现在应用程序正在运行。如果它包含一个applicationClose()方法,我们如何调用它 - 我们可以解析来自客户端的消息,但这当然是不可取的?
java -jar server.jar
applicationClose()
提供关闭请求方法是完全可以接受的,它返回 OK 然后调用System.exit().
System.exit()
在调用它之前,您可能希望使用某种必需的凭据对其进行保护,但除此之外,您没有理由不能这样做。
另一个选项是让进程使用您自己的协议打开另一个 TCP 端口以进行关闭,或者安装 JMX 扩展以远程关闭服务。