2017-09-24 147 views
1

我無法讓dev_appserver.py識別使用queue.yaml創建的自定義隊列。他們不出現在http://localhost:8000/taskqueue,當我嘗試向他們添加任務時,我得到UnknownQueueError。它在生產環境中工作正常。Google App Engine queue.yaml無法在開發服務器上工作

我使用python 2.7在Windows 10

queue.yaml中

 
total_storage_limit: 5G 
queue: 
- name: not-queue-a 
    bucket_size: 500 
    rate: 10/s 
    retry_parameters: 
    task_retry_limit: 2 
    min_backoff_seconds: 10 
    target: msnot 
- name: ui-worker 
    target: msbui 
    bucket_size: 200 
    rate: 1/s 
    retry_parameters: 
    task_retry_limit: 4 
    min_backoff_seconds: 1 

我的項目結構是這樣的:

 
    |-- root 
     |-- queue.yaml 
     |-- index.yaml 
     |-- dispatch.yaml 
     |-- cron.yaml 
     |-- microservice1 
      |-- app.yaml 
      |-- microservice1.py 
     |-- microservice2 
      |-- app.yaml 
      |-- microservice1.py 
     |-- microservice3 
      |-- app.yaml 
      |-- microservice3.py 
     |-- microservice4 
      |-- app.yaml 
      |-- microservice4.py 

我嘗試添加隊列的副本。 yaml到微服務子文件夾,但我仍然有同樣的問題。我也重新啓動了dev_appserver.py幾次。

回答

0

當我將應用程序分成多個服務時,我遇到了同樣的問題,dev_appserver.py沒有完全滿足多服務應用程序的要求。我工作圍繞它的符號鏈接裏面的每一項服務的queue.yaml文件:

|-- microservice1 
     |-- app.yaml    
     |-- microservice1.py 
     |-- queue.yaml -> ../queue.yaml 

威力只需要爲default服務,但我不能完全肯定這一點,我沒有嘗試。

注意:我對其他應用程序級配置文件應用了類似的方法。另見Can a default service/module in a Google App Engine app be a sibling of a non-default one in terms of folder structure?

相關問題