[Dropbox] 一致性问题

在上传或修改文件时有两个任务,一个是创建/更新metadata,一个是上传实际的文件。

  1. 这两个任务是由不同server负责的吗?
  2. 这两个任务时间上有先后关系吗?
  3. 我们怎么(用什么设计)确保metadata和文件的一致性,比如更新metadata成功但上传失败,或上传成功,更新metadata失败?
  1. 是的
  2. 先上传再更新metadata
  3. 如果上传成功,metadata更新失败,对于用户看到的是整个更新失败。 用户可以重试。