2

変更フィードのフェッチを使用して、最後のフェッチ以降の変更を一覧表示する方法を理解しています。

私が理解していないのは、これを双方向同期アルゴリズムに組み込む方法です。具体的には、自分の変更を後続のフェッチから除外するにはどうすればよいですか。

たとえば、私の同期は次のことを行います。-フェーズ1。サーバーの変更をフェッチします。フェーズ2がないとしましょう。ローカルの変更をアップロードします。NewFileという名前の新しいファイルを言います

しばらくしてから再度同期し、フェーズ1に変更としてNewFileが含まれています。したがって、NewFileはラウンドトリップされます。

ChangeIdを進めて無視するために、フェッチの変更を繰り返すフェーズ3を追加することを検討しました。問題は、フェーズ2の間に別のクライアントが更新を行っていた可能性があることです。

4

1 に答える 1

2

ファイル データまたはメタデータを気にするかどうかに応じて、エントリのチェックサムや etag など、ファイルが変更されたかどうかをテストするために使用できる追加情報があります。

これを同期アルゴリズムに統合して、あなたが話している競合状態にならないようにする必要があります。

于 2012-08-27T18:40:21.927 に答える