【问题标题】:General Concurrency GAE Datastore Transactions通用并发 GAE 数据存储事务
【发布时间】:2013-09-07 17:27:42
【问题描述】:

这可能是一个常见问题,但我仍然不清楚解决方案。我正在使用 GAE (Datastore) ,与 Objectify 进行交互。我有一个关于并发的问题。

假设我们有一个对象,我们称之为 blarkar。用户“A”开始一个事务,他将尝试从数据库中加载 blarkar,对其进行修改,然后将修改后的版本保存回数据库中。

我知道在事务中,要么一切都发生,要么什么都没有发生,但我感到困惑的是 blarkar 对象是否被标记为已签出,以及它是否可以在由用户'A 启动的事务中被覆盖', 正在处理。

例如,如果另一个用户,我们称她为“B”,尝试将新版本的 blarkar 保存到数据库中,在用户“A”开始他的事务之后但在他结束之前,她的更改当用户 'A 的事务结束时被覆盖?

我再次使用 GAE 数据存储,并与 Objectify 进行交互。但是,Objectify 似乎只是实现了 Datastore 的事务 API。

非常感谢。

【问题讨论】:

    标签: google-app-engine concurrency transactions google-cloud-datastore objectify


    【解决方案1】:

    阅读:https://code.google.com/p/objectify-appengine/wiki/Concepts#Transactions

    您也可以在 Google 上搜索 Optimistic Concurrency。

    【讨论】:

      猜你喜欢
      • 2020-08-16
      • 2012-03-09
      • 2014-09-02
      • 1970-01-01
      • 2012-11-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多