1

Rackspace上更新云文件时如何练习乐观并发。

Azure blob 存储中,我会:

  • 获取 blob
  • 记下它的 etag
  • 修改 blob
  • 在 If-None-Match 标头中使用 etag 上传修改后的 blob。

这意味着如果其他人在我的 GET 和上传之间上传了修改后的 blob,我的上传将失败,因为 etag 不匹配(然后我重新 GET 然后修改并再次上传)。

无论如何,我找不到使用 Cloud Files 执行此操作的工具。我可以获得一个我计划修改的 blob 的 etag,但我无法像我期望的那样将它与 If-None-Match 标头一起发回。您可以发送一个 etag 标头,但这需要我发送的数据的 MD5 校验和,而不是他们已经拥有的。

据我所见,也没有要发送的 Last Modified 请求标头。

在此如何确保在对 Cloud Files 的并发工作期间不会丢失修改?

4

0 回答 0