阻止对App Engine数据存储的并发访问

Jef*_*rey 1 google-app-engine synchronization google-cloud-datastore

我正在Google App Engine上构建一个应用程序,该应用程序使用数据存储区存储有关服务器当前状态的信息.当Android设备查询服务器时,servlet从数据存储区获取实体,对其进行修改,然后将其放回数据存储区以更新数据存储区条目.

但是,有时当servlet的一个实例从数据存储区获取数据时,servlet的另一个实例在第一个实例将更新的数据重新放入之前执行相同的操作.这会导致我的应用程序出现同步问题.

有没有办法"锁定"数据存储区,以便在锁定释放之前无法对其进行任何操作?

谢谢.

Dan*_*man 6

交易是你所追求的.

但请仔细阅读文档:对交易中的操作有严格的限制.具体而言,您只能在单个实体组内查询 - 即具有相同祖先的实体集.