Django ORM を使用するスクリプトを実行しています。スクリプトは、場合によっては 3 日以上長時間実行されます。スクリプトは以下のようになります
from app.models import *
for i in some_simpe_select():
more_simple_selects()
processing_for_few_minutes()
new_object.save()
わずかに異なるオプションで同時に実行される同じスクリプトの複数のインスタンスがあります。postgresql を使用しています。時間の経過とともに、これにより DB CPU が高くなります。ps は、postgres プロセスがトランザクションでアイドル状態であるが、CPU 使用率が異常に高いことを示しています。
django スクリプトを長時間実行する場合、特に db CPU 使用率が高い場合のベスト プラクティスは何だろうか。
ジャンゴ 1.4、Python 2.7、Postgresql 9.1