node.js工作者崩溃(SIGKILL)没有明显的原因

时间:2014-02-03 16:23:31

标签: node.js

我有一些处理http连接的工作人员(快递)。服务器一次处理多个同时连接。由于大型文件正在被代理,因此连接可能相对较长。

根本没有例外。我怎样才能追查原因?

谢谢。

node.js v0.10.25
Linux版本2.6.32-5-amd64(Debian 2.6.32-48squeeze1)

1 个答案:

答案 0 :(得分:0)

SIGKILL是一个信号,发送到进程立即杀死它,有可能并且外部进程可能正在杀死nodejs。有很多原因导致它发生,但nodejs不太可能因为收到SIGKILL信号而崩溃。

如果使用Workers运行服务器,可能会很自然地发生。在不知道您运行的服务器的情况下,很难说这是一个问题还是一切都很好。我知道python中的一些webserver可以释放内存。由于Web服务器可能会自然泄漏内存,因此最好杀死工作人员并启动新工作人员,而不是处理GC等。如果你有大文件,主服务器很可能足够聪明,看到子进程要么泄漏记忆或在做大GC时没有反应。

主服务器将杀死工作人员并启动新工作人员。