【问题标题】:tSSH-Talend blockes job from continuing RuntSSH-Talend 阻止作业继续运行
【发布时间】:2020-04-02 09:22:38
【问题描述】:

我使用 tSSH 组件来调用远程服务器上的 docker-image。 此 docker 映像将创建一个 Json 文件,该文件将指示该过程的结束。 然而,在我的工作中,我还有一个并行过程来检查要使用 SCP 复制到本地 Talend 机器的文件的可用性。 很简单,我在与 docker-image 相同的机器上写了一个脚本,这个脚本会检查文件是否可用,当我用 Talend 调用它时它会写类似的东西:

就像我提到的,请注意,此测试与主脚本并行运行。

我的joblet(它是一个joblet,因为我有很多脚本可以这样运行):

如您所见,tParallelize 可以同时运行两个进程。

正如我所说,我有许多脚本每次都以相同的逻辑以这种方式运行,并且它工作正常,除非主脚本不需要太长时间来执行。

tSSh 冻结并阻止整个 java 作业。 parallelize 的底部响应并将 json 文件复制到本地机器但不复制上部。

未配置超时,“errors”和“stdout”都通过触发 OnComponentOK 链接重定向到 FullLogFile。

如果有帮助,主脚本(导致问题的)执行在最坏的情况下可以持续 100 小时,在最好的情况下可以持续几个(7,8 或 9)小时。其他脚本只需几分钟即可执行,这就是我执行它们从未遇到问题的原因。

假设冻结来自“errors”和“stdout”的重定向,服务器日志可以达到3Mo(但这次服务器上的日志大小仅为0,7Mo并且它会阻塞)?谁知道?

在网上搜索我发现我不是唯一遇到这个问题的人:

https://community.talend.com/t5/Design-and-Development/tssh-timeout-process-blocked/td-p/60402

https://community.talend.com/t5/Design-and-Development/tSSH-component-is-not-ending-and-keeps-on-running-when-executing/td-p/196518

任何帮助或相同的经验分享将不胜感激。

谢谢。

【问题讨论】:

  • 您是否尝试过添加退出命令,如您的第一个链接中给出的那样?

标签: docker ssh parallel-processing talend


【解决方案1】:

另一个帖子的相同答案。

问题可能与ssh服务器端的keepalive有关。

连接是否通过防火墙或 vpn?

您可以尝试使用简单的 ssh 客户端连接,如果一个小时后您在客户端没有输入任何内容而断开连接,那是因为网络设备关闭了连接。

更多信息在这里:)

https://unix.stackexchange.com/questions/200239/how-can-i-keep-my-ssh-sessions-from-freezing

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多