mod_wsgi-express随机重启/崩溃

时间:2015-03-24 19:14:13

标签: python flask mod-wsgi

我正在使用mod_wsgi-express在CentOS 6服务器上提供简单的Flask应用程序。该应用程序目前很少使用。

我遇到了一个问题,每隔几天,应用程序就会崩溃,要么提供500个错误,要么根本没有响应。这似乎与加载或使用无关。

查看错误日志,我偶尔会看到“ [notice]捕获SIGTERM,关闭”消息,之后会出现mod_wsgi-express restarts。我不知道为什么会这样。

我也收到了这条消息:

  

[错误](2)没有这样的文件或目录:mod_wsgi(pid = 24550,process ='localhost:8080',application =''):调用fopen()失败ff   或'/tmp/mod_wsgi-localhost:8080:14699/handler.wsgi'。

我尝试在启用了gdb和pdb调试器的情况下运行mod_wsgi-express,并且没有看到任何与Python脚本的实际执行相关的错误。

我也有一个

  

[info] [client 137.78.237.31](104)通过对等方重置连接:core_output_filter:将数据写入网络

开了数百个

  

[notice] child pid 15952退出信号分段错误(11)

过了几天。

这些消息似乎都是随机发生的,彼此独立。 唯一一致的是SIGTERM信号经常发生。

我对发生了什么感到困惑。实现看起来非常简单 - 它是一个简单的工具,用于验证上传文件中的元数据。

1 个答案:

答案 0 :(得分:0)

对于500个错误,请使用--server-root选项为其工作目录指定默认值/tmp以外的目录。

默认值应仅用于短期运行,而--server-root用于指定更长久的主页,如果运行更长时间。

这是必要的,因为某些操作系统可以设置为在/tmp中删除一段时间内没有修改过的文件。我一直在考虑在启动输出中添加一个警告,专门建议使用--server-root如果依赖默认值。

有关分段错误的问题,请访问mod_wsgi邮件列表进一步讨论。 StackOverflow不是一个讨论论坛,该问题可能需要更多调查和讨论才能了解您的应用程序正在做什么。


更新1

继续讨论: