如何解决扭曲的python连接到另一边失去了非干净的方式?

时间:2017-03-01 16:20:00

标签: python twisted buildbot twisted.web twisted.internet

我使用buildbot作为我的CI。它是用扭曲的python构建的。

我的建筑工人大约在10分钟后迷路了。

我的网络很好,但想知道为什么我的工人迷路了。

我想知道在什么情况下我们会在扭曲的python中看到这种错误。

错误:

remoteFailed: [Failure instance: Traceback (failure with no frames): <class 'twisted.internet.error.ConnectionLost'>: Connection to the other side was lost in a non-clean fashion.

2 个答案:

答案 0 :(得分:2)

如果您看到断开连接,并且主服务器和工作人员的twisted.log都没有线索,那么您的问题就是网络。

您可能在某些防火墙之间关闭长时间运行的TCP连接或其他东西。

我建议在两边运行tcpdump,看看谁在发送RST数据包

答案 1 :(得分:1)

正如@tardyp注意到的那样,这可能是您的网络配置,它会重置没有流量的长TCP连接。

尝试为{-3}}所述的主工作者通信设置较小的保持活动值:

c['workers'] = [
    worker.Worker('bot-linux', 'linuxpasswd',
                  keepalive_interval=60)
]

发送keep-alive数据包的默认时间间隔为1小时。