gpt4 book ai didi

java - 两台机器上运行的进程之间的通信

转载 作者:太空宇宙 更新时间:2023-11-04 11:13:04 25 4
gpt4 key购买 nike

所以,我有两台 Linux 机器,我在机器 A 上运行 java 代码,并通过 ssh 在机器 B 上运行一些模拟。完成后我可以通过哪些方式将结果传回机器 A与计算(我不想使用数据库)。结果主要是每个模块的状态消息,是否按预期执行。还有如何跟踪机器B的模拟运行状态(我可以检查进程的pid,如果存在则作业正在运行,但有没有更好的方法)。机器 B 有一些安全限制,比如我不能打开端口等。

最佳答案

使用jSCH

    JSch shell = new JSch();
session = shell.getSession(userName, serverIP, 22);
session.setPassword(password);

session.setTimeout(timeout);
java.util.Properties config = new java.util.Properties();
config.put("StrictHostKeyChecking", "no");
session.setConfig(config);
session.connect();

channel = session.openChannel("shell");
input = new InputStreamReader(channel.getInputStream(), encoding);
output = new PrintStream(channel.getOutputStream());

channel.connect();

output.write ("/home/test/runCommand");

// result
while ((ch = input.read () != -1) {....}

关于java - 两台机器上运行的进程之间的通信,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22216241/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com