以下内容应创建Counter
模型并使用(延迟)任务将计数器增加到10.访问'/'
应创建一个Counter
对象{{1} }。这在生产中发生。在开发(localhost)中,创建了多个count = 10
个对象,其中最大的是10:
我怀疑这是因为Counter
在开发时不是同步的(但似乎总是在生产中)。有没有办法使它们同步?
以下代码段:
put
答案 0 :(得分:7)
生产'同步性'很明显,但不保证(在您的方法中)。总是会发生在查询中找不到新创建的计数器,因此您的代码可能会创建多个计数器。
此Balancing Strong and Eventual Consistency with Google Cloud Datastore文章中的详细信息。
答案 1 :(得分:2)
您应该按键检索您的计数器,然后您将避免最终的一致性。特别是你似乎只创建一个Counter对象。如果您有大量并发写入,这不会扩展。
阅读与其他答案相关联的文章也是值得的。你的方法存在很多问题。
我觉得你甚至会考虑使用查询来实现这个功能。通过指定密钥,您还可以保证单个计数器实体。