动态后端如何在Google App Engine中启动

syl*_*mos 10 google-app-engine backend dynamic google-cloud-datastore

我们可以以编程方式启动动态后端吗?意味着当后端启动时如何通过回退应用程序来处理请求(我的意思是app.appspot.com).

当我在管理控制台中手动停止后端并向其发送请求时,它不会"动态"启动

cri*_*aig 5

动态后端在收到请求时就会存在,并在空闲时被拒绝; 它们非常适合间歇性或由用户活动驱动的工作.

驻留后端持续运行,允许您随着时间的推移依赖其内存状态并执行复杂的初始化.

http://code.google.com/appengine/docs/python/backends/overview.html

我最近开始在动态后端执行一个长时间运行的任务,并注意到前端性能的急剧增加.我认为这是因为长时间运行的任务正在与普通用户请求竞争资源.


Nic*_*son 4

这里对后端的记录非常详尽。必须使用 appcfg 或管理控制台启动和停止后端,如此处所述。停止的后端将不会处理请求 - 如果您想要这样,您可能应该使用任务队列。

  • 您可以像这样组合任务队列和后端: `taskqueue.add(url='/task_url', method='GET', target='name_of_your_backend'))` 不过该任务不会在 dev 上运行,因此将 target 设置为 None在开发上: `taskqueue.add(url='/task_url', method='GET', target=(None if const.DEBUG else 'name_of_your_backend'))` 其中 DEBUG 等于 `os.environ['SERVER_SOFTWARE'] .startswith('Dev')` (4认同)
  • @lucemia 动态后端的全部要点在于它们是动态的——它们在有需要服务的流量时启动,并在空闲一段时间时停止。 (3认同)