我已经实现了两个服务器端HTTP端点,其中1)存储一些数据,2)处理它。方法1)通过App引擎任务调用方法2),因为它们是我不希望客户端等待的耗时任务。这个过程在下面的顺序图中得到了说明。
现在,我不时地体验到,处理任务(在下面的序列图中名为processSomething )在试图处理时找不到数据--下面的黄色throw WtfException()说明了这一点。这能用最终一致性模型在此描述来解释吗?
文档显示,读的一致性很强,但写入的一致性很强。我不知道这和这个案子到底意味着什么。如有任何澄清,我们将不胜感激。

编辑:--我意识到我在这里问一个布尔问题,但我想我是在寻找一个答案,上面有一些关于最终一致性的文档,比如一般的一致性,特别是Google。
编辑2:按请求在这里提供了有关实际读写操作的详细信息:
写操作:
entityManager.persist(hand);
entityManager.close() 我用JPA来维持数据。对象'hand‘是从客户端接收的,以前没有存储在db中,因此将分配一个新的密钥Id。
读取操作:
SELECT p FROM Hand p WHERE p.GameId = :gid AND p.RoundNo = :rnoGameId和RoundNo都不是主键。GameId是一个“外键”,尽管数据存储在设计上忽略了这一点。
发布于 2013-04-18 20:16:55
如果您显示了实际的代码,展示了如何保存实体以及如何检索它,但假设id是一个实际的数据存储ID (密钥的一部分),并且您的load是一个使用id的get,而不是使用其他属性的query,那么最终的一致性就不是问题了。
(这方面的文档是再往下看你链接的页面。)
https://stackoverflow.com/questions/16090171
复制相似问题