我实际上是在Google App Engine上实现一个web应用程序。这花费了我大量的时间通过GAE需求和最佳实践重新设计数据库和应用程序。
我的问题是:我如何确定GAE是容错的,或者它的容错程度如何?我在GAE中没有找到任何关于这方面的文档,这是一个对我来说可能有缺点的问题:例如,我的应用程序必须从数据存储中读取一个实体,在应用程序中计算它,然后将其放到数据存储中。在这种情况下,我们如何确保这将被正确完成并获得正确的数据:例如,如果执行计算的机器崩溃了?
谢谢你的帮助!
发布于 2009-11-05 05:47:36
如果服务器在请求过程中崩溃,该请求将失败,但任何新请求都会被路由到不同的服务器。因此,一个用户可能会看到错误,但其他用户不会看到。数据存储中的数据将是正常的。如果您有需要保持一致的数据,则应在事务中进行更新,以便要么应用整个更新集,要么不应用任何更新。
发布于 2009-11-06 02:35:20
在同一实体组上操作的事务是串行执行的,但在不同实体组上操作的事务是并行运行的。因此,除非有一个单一的实体,你的应用程序中的所有东西都想要读写,否则可伸缩性不会受到事务的影响。
https://stackoverflow.com/questions/1670558
复制相似问题