【问题标题】:Sharing data between appengine modules在 appengine 模块之间共享数据
【发布时间】:2017-10-04 22:28:13
【问题描述】:

我正在尝试使用 appengine 数据存储在 appengine 模块之间共享密钥。 我正在一个模块中编写密钥,我可以从该模块中读取它。

尝试从第二个模块读取它不起作用,我没有得到这样的实体响应。

在模块之间共享密钥的最佳方式是什么?我可以为此使用数据存储吗?从我在文档数据存储中读到的内容是在服务之间共享的。但它似乎对我不起作用。

【问题讨论】:

    标签: google-app-engine go module google-cloud-datastore google-cloud-platform


    【解决方案1】:

    您可能会遇到最终的一致性问题。数据存储是分布式的,因此一个服务可能会遇到一致的数据版本,而另一个服务(模块)可能会遇到另一个过时的版本。数据存储区绝对是在模块之间共享数据的一种方式,因此它可能是一个一致性问题,除非您重组数据或查询强一致性,否则无法保证您能够立即读取数据,或者可能是其他问题,例如您在其他模块中的键错误,或者以某种方式访问​​了不同的命名空间。

    以下是有关数据存储一致性的一些资源: https://cloud.google.com/datastore/docs/concepts/structuring_for_strong_consistency https://cloud.google.com/datastore/docs/articles/balancing-strong-and-eventual-consistency-with-google-cloud-datastore/ https://cloud.google.com/datastore/docs/best-practices

    来自最后一个链接:

    如果您需要查询的强一致性,请使用祖先 询问。 (要使用祖先查询,您首先需要结构化数据 强一致性。)祖先查询返回强一致性 结果。请注意,非祖先仅键查询后跟 lookup() 不会返回强结果,因为非祖先 仅键查询可以从不一致的索引中获取结果 在查询时。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-10-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-03-17
      • 2016-04-20
      • 2022-01-17
      相关资源
      最近更新 更多