标签: scalability distributed-system compare-and-swap idempotent
有没有什么方法可以使非幂等请求成为幂等。
基本上,我要执行以下两个操作:
Op1 :CompareAndSwap(“ abc”,“ abca”)
Op2 :CompareAndSwap(“ abca”,“ abcab”)
现在在Op1和Op2的末尾,这就是我想要的(“ abcab”)
但是由于间歇性故障和随后的Op1操作重试,我最终可能会遇到“ abcaab”。这是因为我没有办法知道是否在客户端应用了Op1。另一个重试可能会附加更多数据。
那么有什么办法解决这个问题?