【问题标题】:Can dynamic backends be started dynamically in Google App Engine?可以在 Google App Engine 中动态启动动态后端吗?
【发布时间】:2011-10-25 03:01:55
【问题描述】:

我知道以前有人问过这个问题,但我无法找到明确的答案。

我想使用动态后端来处理添加到默认推送队列的任务。我更喜欢使用后端,因为我需要额外的内存(1g vs 128m)

问题How do dynamic backends start in Google App EngineStarting and stopping Google App Engine backends 都表明这不能以编程方式完成,而documentationGAE issue 5695 都表明可以做到。

如果是 - 如何? (我想要的行为是动态后端在任务添加到队列时启动,并在队列为空时停止。)

【问题讨论】:

    标签: python google-app-engine backend


    【解决方案1】:

    必须手动启动和停止驻留后端。动态后端在收到 HTTP 请求时自动启动,并在几分钟的空闲时间后关闭。

    要将任务发送到特定后端,specify a target

    taskqueue.add(url='/path/to/my/worker/', params={'key': key},
                  target='1.backend1')
    

    【讨论】:

    • 谢谢。我对此进行了更深入的研究,我的结论是,上面的描述和文档是正确且有效的,但是忽略了一个细节(对我来说并不明显)。也就是说,除了 a) 在 backends.yaml 中定义您的支持和 b) 使用 appcfg 命令行工具显式更新后端之外,您还必须 c) 使用管理控制台启动动态后端。如果您不这样做,该任务将不会运行。手动启动动态后端后,它会按照文档中的说明进行操作。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多