SummerEye part8 -ファイル削除-
一旦、前回までで動くものができました。
デザインやりますと言いながらHTMLが辛いので、そこそこにとどめ。
今回はファイル削除を実装します。
現状だとどんどこサーバにファイルがアップロードされていってしまい、いずれパンクするので。
削除タイミング
はじめに思いついたのは、
リネーム、圧縮、ダウンロードの後のタイミングで消してしまうというものでした。
しかし、return send_file()でファイルを送った後、どのようにして処理を継続するんだ、ということになってしまいました。
ということでcron的に定期的に消すことにします。
2時間以上前に作られたディレクトリを削除することにします。
適当にそれっぽいスクリプトを書きました。割愛。
Azure Web ジョブで定期的に実行
要するにcronですね。
使い方はここら辺を参照。
pythonスクリプトをアップロードして、1時間置きに実行されるように設定しました。
実行パスに注意です。
まずは手動で作ってちゃんと意図したようにディレクトリが削除されるのを確認。
次にスケジュールしたものを作りました。
スケジュール指定したところ以下のメッセージ。Web Appを常時接続にしなくてはいけないとのこと。
常時接続とはなんぞや。
何と、常時接続するにはStandard以上である必要があるとのこと。
プランをfreeからStandardに変更します。
。。。
します?
cron一個流すのに4500円も払えないですね。
とりあえずfree継続で。
不要ファイルの削除は気が向いた時にcronファイルを手動で叩くことにします。
どうせしばらくは誰も使わないし。
しかし、毎回初回接続の時はページ表示されるのに時間がかかっていたのは常時接続が有効になっていなかったからなんですね。
何でかなあと思っていた疑問が解決してよかった。
割とクレジットに余裕があるのでStandardにしてもいいんですが。貧乏性。
ちゃんとStandardプランで運用するに値するものになった段階でまたcronについてまとめます。