我计划在远程 Linux 计算机上运行一个长时间运行的进程(Blender 渲染,从 5 分钟到一个小时)。我目前想到的是一个非常简单的过程:
- 将文件移动到远程计算机
- 使用 ssh 开始渲染
- 获取渲染输出文件
这将是一两个 bash 脚本 - 没有更复杂的了。
在理想的情况下,我会断开与远程计算机的 ssh 会话,并且仅在渲染完成后获取文件。只要需要获得渲染,等待就可以。
断开连接似乎是正确的做法,因为我可能会同时在 20 台计算机上启动渲染 - 我不知道保持尽可能多的 ssh 会话是否是一个好主意。
处理这个问题最简单的方法是什么?
我正在考虑几个替代方案:
- 使用 ssh 定期检查远程计算机上是否有搅拌机进程正在运行,以及输出文件是否可用
- 让远程计算机上的curl将渲染过程的结果上传到发出请求的计算机
这里的事情是:
- 原始计算机可能位于 NAT 之后
- 渲染机可以动态配置以应对高峰需求
是否有更好的东西是我——由于我对这些事情的无知——不知道的?