2011-01-10 69 views
1

我在我的生产环境(apache mod_wsgi)中有一个长时间运行(〜3小时)管理命令 的django项目,此进程在最后尝试以最后一个损坏的管道(32)失败时失败更新数据库。django长时间运行的进程数据库连接

谢谢

+0

您不应该在Web进程的上下文中运行如此长的运行命令,因为某些Apache配置进程可能会在任何时候中断并重新启动。您应该从单独调用的进程中运行此类命令,该进程在后台运行并与Web进程取消关联。例如,如果按照定期计划完成,则从cron中触发它。 – 2011-01-10 07:52:12

回答

1

破裂的管道主要是指在传输管一个插座已关闭不通知另一方,你的情况我认为这意味着数据库连接你已经建立了从封闭数据库部分,所以当你的代码尝试使用它时,会引发异常。

通常情况下,数据库连接有一段超时时间,通常您可以通过使其更大以解决此类问题进行配置,请查看数据库文档以了解如何实现。你不给我们太多的细节,所以我只是想在这里做出假设。

嗯,希望这可以帮助。

相关问题