2011-01-10 19 views
1

長時間実行している(〜3時間)管理コマンド のdjangoプロジェクトを私の実稼働環境(apache mod_wsgi)に持っています。このプロセスは最後に破損したパイプ(32)で失敗します。データベースを更新します。django長時間実行中のプロセスデータベース接続

は壊れたパイプはほとんど伝送の運河内の1つのソケットが他の1に通知することなく閉じられたことを意味する、あなたのケースで私は、それはあなたが確立したことをデータベース接続から閉じたことを意味するものだと思うあなた

+0

Webプロセスのコンテキスト内でこのような長い実行コマンドを実行しないでください。特定のApache構成でプロセスを強制終了し、いつでも再起動できます。このようなコマンドは、バックグラウンドで実行され、Webプロセスから分離された、別々に起動されたプロセスから実行する必要があります。たとえば定期的なスケジュールで実行された場合は、cronからトリガーします。 –

+0

はい、それはcronで行われ、manage.py でdjangoシステムとやりとりします。 – Mercury

答えて

1

に感謝しますデータベース部分ですので、コードを使用しようとすると例外が発生します。

通常、データベース接続には、この種の問題を解決するために「通常は」構成可能なタイムアウトがあります。データベースのドキュメントで確認してください。

N.B:私たちは詳細を教えていないので、私はここで仮定しようとしています。

これは役に立ちます。

関連する問題