【问题标题】:Is it possible to access GAE datastore without an http request?是否可以在没有 http 请求的情况下访问 GAE 数据存储?
【发布时间】:2013-01-05 09:03:00
【问题描述】:

是否可以在不从 http 请求中创建 appengine 上下文的情况下访问 GAE 数据存储? 我希望能够在无法访问应用引擎上下文的单独线程中访问数据存储。这可能吗?还是我应该尝试找到解决方法? 我使用的语言是 Go btw...

编辑:更多信息 我不能使用将所有 appengine 上下文传递到所需级别的原因是因为我正在构建一个具有多个线程的聊天服务器。一旦使用上下文的一个实例启动主端口侦听线程,它就会在线程的持续时间内保持该上下文。但是,在该线程启动后,可能会有更多到服务器的连接,所有这些连接都无法通过上下文,因为端口侦听器已经启动。我需要一直传递上下文的原因是因为我需要能够在客户端读取处理程序中记录消息。 提前致谢

【问题讨论】:

    标签: google-app-engine go


    【解决方案1】:

    我不确定这是否是您正在寻找的,但 GAE 提供了一个remote api,它使您能够与您的服务进行交互。我确信它是为 Python 和 Java 版本提供的。

    【讨论】:

    • 这看起来如果我使用 Python 就可以工作......不幸的是,我的服务器的其余部分在 Go 中,从外观上看,Go 工具似乎没有这个功能尚未...
    • 如果你足够勇敢,你可以用gae-init将你的Go web应用程序的逻辑重写为python
    【解决方案2】:

    我认为您需要appengine.Context(因此也需要请求)才能访问任何数据存储区。幸运的是,该请求应该很容易传递给代码中需要它的任何部分。

    我不确定appengine_internal 对上下文做了什么,但上下文本身可以根据需要来回传递。如果您认为这对您不起作用,也许代码示例将是一个很好的下一步?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-09-28
      • 1970-01-01
      • 2021-09-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多