4

Python 2.7 で Windows 用のデスクトップ アプリケーションを構築しています。このアプリケーションの主な機能は、新しいファイルのフォルダーを監視することです。このフォルダーに新しいファイルが表示されるたびに、アプリはそのファイルをリモート サーバーにアップロードします。リモート サーバー上のプロセスは、ファイルのデータベース レコードを作成し、そのレコードにリモート ファイル パスを格納します。

現在、ウォッチドッグを使用してディレクトリを監視し、 httplibをファイルのアップロードに使用しています。

  1. ネットワークの状態やインターネット接続の切断に関係なく、新しいファイルが確実にアップロードされるようにするには、どのようなアプローチを取る必要がありますか?

    更新:信頼できるアップロードとは、アプリが再起動してもアプリがファイルをアップロードするということです。ドロップボックスのように。一部のファイルは非常に大きい (> 100 MB) ため、コードをラップしtry / catchてアップロードを開始するなどの単純なソリューションはあまり効率的ではありません。Dropbox が librsync を使用していることは知っていますが、この場合はやり過ぎかもしれません。

  2. アップロード中にソース ファイルが変更された場合はどうなりますか? アップロードを停止して最初からやり直す必要がありますか?

4

1 に答える 1