由于 Google App Engine(GAE)存储服务是基于 Google 分布式存储环境的,所以在设计基于 GAE 应用时的事务处理要格外注意。
- 事务中操作的实体必须属于同一实体组(同一实体组将被存储在同一 Google 分布式存储单元中)
- 同一事物中先写入的数据并不能在该事务中的后续操作中读取到,此时读取的数据仍为事务开始前的原始数据(这点与很多数据库事务概念不一样,切记)
- 最好在事务外准备好数据,事务从开始到提交之间的耗时越短越好
- 如果需要,事务操作可能需要进行重试
具体细节请参考:Google App Engine Transactions