我正在尝试在GAE Java 8中使用任务队列,但由于某种原因,它似乎无法通过queue.xml文件正确部署。我也看不到Cloud Tasks控制台(从App Engine控制台重定向到的位置)中的任务队列。
运行该应用程序时出现错误java.lang.IllegalStateException: The specified queue is unknown : xxxxx
。
该应用程序在本地运行良好。我可以看到任务队列出现在本地管理页面中。
这是否意味着我不能再通过queue.xml部署任务队列了?
答案 0 :(得分:1)
您应该注意,队列配置不是每个版本的配置(甚至不是每个服务的配置!),而是全局的,每个应用程序的配置。如果需要,也可以选择每个项目-考虑到每个GCP项目只能有一个GAE应用程序。
此单队列配置由应用程序的所有服务的所有版本共享,因此:
在某些情况下,queue.xml
文件可能会在部署应用程序代码时自动部署,并非总是。官方推荐的部署方法是使用专用于队列配置的deploy命令,该命令可以独立于部署应用程序/服务代码而执行。来自Deploying the queue configuration file:
要部署队列配置文件而无需另外更改 当前提供服务的版本,请使用以下命令:
appcfg.sh update_queues <application directory>
将
<application directory>
替换为应用程序的路径 主目录。
如果有以下情况,请格外注意
: