我有6个月的Py38标准gae项目在欧洲-西部3地区,以及在数据存储模式下的Firestore。
即使使用Redis作为全局缓存或不使用,我也从未遇到任何不一致的问题。在put (insert)产生新的结果后立即(1秒)进行重定向,直到上周为止。我做了一些长凳,需要大约30分钟才能完成全局查询。它的行为实际上类似于数据存储仿真器,一致性参数设置为0.05。
我读过很多关于数据存储及其最终一致性这里的文章,但正如文档所述,对于“旧”版本来说,这是正确的。在数据存储模式下的新的防火墙应该确保强一致性,如按照这部分。
最终的一致性,所有的数据存储查询变得非常一致。
我是不是把这个说法解释错了?
我还创建了一个新的项目(相同的区域),只有基本的ndb初始化和仍然极端的“滞后”。
我想不出是什么导致了这种新的行为。可能是Warshaw数据中心刚刚开始,这导致了问题的出现吗?
google ndb=1.8.0的抽象代码
class X(ndb.Model):
foo = ndb.StringProperty()
x = X(foo="a")
x.put()
time.sleep(5)
for y in X.query(): # returns 0 results
print(y)如果我按钥匙得到实体,它就在那里,新鲜。它甚至会立即出现在数据存储管理中。
发布于 2021-06-07 15:05:57
这也是作为https://github.com/googleapis/python-ndb/issues/666提交的。原来,在1.9.0之前,Cloud显式地请求了最终一致的查询。
https://stackoverflow.com/questions/67515016
复制相似问题