谷歌应用引擎后端Python



我在Google App Engine Python中运行后端时遇到问题。

在我的app.yaml中,我添加了这个处理程序:

- url: /backend/.*
script: backend.app
login: admin

在backend.app中,我为"/"定义了一个处理程序。

我的backends.yaml看起来是这样的:

backends:
- name: dbops
options: dynamic

在我的前台应用程序中,我添加了一个任务队列来调用后端:

taskqueue.add(url='/backend/', target='dbops') 

当我查看日志时,我只看到404个错误,后端不会显示在后端部分下,但如果我查看实例,就会启动一个新实例。任何人都得到了任何指导,因为后台文档并没有太大帮助。

编辑

经过下面Alex的一些帮助,我已经在后台运行了代码。我错过了部署到后端的步骤。

appcfg.py backends ./ update dbops

现在,我看到后台实例在管理界面中运行良好,但任务队列不断返回404错误,我确信我做错了什么。

我在backend.py中配置处理程序的方式与在frontend.py配置处理程序相同吗?我可以访问后端实例上frontend.py中定义的处理程序,但不能访问backend.py.中定义的那些处理程序

编辑10/17/12

经过一番挖掘,我发现我的通配符处理程序在apps.yaml中的后端处理程序之前列出。所以现在后端处理程序可以工作了。我将这个进程定义为管理处理程序,但它仍然超时。

为什么这不起作用?它总是返回一个405错误并不断重试。

taskqueue.add(url='/backend/',target='dbops')

/backend永远不会匹配/backend/.*模式。你应该在末尾加一个斜线:

taskqueue.add(url='/backend/', target='dbops')

此外,在您的后端,您可能应该做同样的事情,并在/backend/上定义您的处理程序。

最新更新