2017-12-20 5 views
1

バッチエンドポイント(/2/files/upload_session/start)へのファイルアップロードを、ファイルアップロード時間全体の名前空間ロックを避けるために移行しようとしています。しかし、バッチ処理中に待ち時間の問題に直面しています。例:Dropboxバッチエンドポイントを使用しているときの待ち時間

  1. 1つのファイルのアップロードを開始します。ファイル内容(2MB)で/2/files/upload_session/startと呼び出すと、1秒かかります。
  2. バッチの仕上げ。 /2/files/upload_session/finish_batchとセッションの詳細を呼び出すには200ミリ秒かかります。
  3. 初めてバッチ完了を確認しています。 /2/files/upload_session/finish_batch/checkを呼び出し、ジョブIDは200ミリ秒、レスポンスのタグは "in_progress"になります。
  4. 再度確認する前に100ms待機しています。
  5. 2回目のバッチ完了を確認します。 /2/files/upload_session/finish_batch/checkを呼び出し、ジョブIDが200ミリ秒かかる場合、応答のタグは "in_progress"のままです。
  6. 再度確認する前に100ms待機しています。
  7. 3回目のバッチ完了を確認します。 /2/files/upload_session/finish_batch/checkを呼び出すと、ジョブIDは200ミリ秒かかります。応答のタグは、最後に ""と等しくなります。

なぜバッチ仕上げ(ステップ2-7)に時間がかかるのですか?

P.S.このテスト中に他のアップロードは同時に実行されません。

答えて

0

これらのAPI呼び出しのそれぞれがかかりますどのくらいに貢献する様々なものがあります。

  • をHTTPSを作るのオーバーヘッドが処理
  • ネットワーク通過時間
  • 自分自身を呼び出しますが、 DropboxのAPIサーバーのバックエンド上の時間にコミットされているどのように多くのファイル

Unfortunat ely、これはアプリの制御から外れているので、これを改善するためにできることはあまりありません。 The data ingress guideは読んでおく価値があります。また、これをパフォーマンス向上のための機能要求と見なしますが、それがいつ実行されるかについての約束はできません。

関連する問題