2017-09-20 4 views
0

だから私はPythonで管理しているかなり大きなjsonデータベースを持っています。これは基本的に1時間ごとにウェブサイトからデータを収集しており、私はcrontab経由でシステム(Linux Mint)上で毎日再起動しています。私の問題は、データベースの更新プロセス中にシステムが再起動した場合、jsonファイルが破損するということです。Pythonでjson DBを更新中にシステムシャットダウンが遅れる

私の質問は、システムで安全な時間にシステムがシャットダウンされるように、スクリプトでシステムを再起動するのを遅らせることができたかどうかです。私はスクリプト自体の中でrestartコマンドを発行することができましたが、将来これに似た複数のスクリプトを実行することに決めた場合は、明らかに問題があります。

ここにお手伝いいただければ幸いです。ありがとう

編集:私はpythonのjsondbパッケージを使用していないです。私は(だけで、データの整合性を保護する)ので、これまでの私のソリューションは非常に簡単だった

答えて

0

自分自身を扱うすべてのファイルをしています:書き込みの前に
- 成功した書き込み上のバックアップファイル
を - バックアップを削除するには、(の大きさを倍増回避しますDB)
ここまで壊れたファイルが見つかりました - バックアップに戻す

ファイルバックアップ中にシステムがスクリプトを閉じると問題はありませんが、元のファイルが残っていて、システムがオリジナルのファイルへの書き込み中にスクリプトが削除された場合、バックアップは削除されず、代わりに使用することができます。すべてとすべてがコードの余分な6行であり、問​​題を解決したようです。