猿问

GAE 多租户和事务 - Go

如果我在 GAE 数据存储上使用多租户功能,是否也会为每个租户应用数据存储事务锁?或者,如果租户正在使用数据存储事务,则所有其他租户都必须等到租户的事务完成?


慕村9548890
浏览 277回答 2
2回答

回首忆惘然

有两点需要注意:命名空间是实体键的一部分,因此事务仅适用于作为事务一部分的实体。其他命名空间的实体即使 ID 相同也不会受到影响。GAE 上的事务不进行锁定,而是使用乐观并发控制。所以事务永远不会阻塞,只是当两个事务在同一个实体上运行时,第二个事务将失败,然后运行时将尝试重复它最多 3 次。这种自动重试是您的事务应该是幂等的(= 多次运行代码应该产生相同的最终结果)的原因。
随时随地看视频慕课网APP

相关分类

Go
我要回答