我有一個谷歌的AppEngine應用程序,它運行在定義爲動態的後端部分代碼如下:如何發送任務到一個新命名的後端
backends:
- name: downloadfilesbackend
class: B1
instances: 1
options: dynamic
我最近做了一些改變,以我的代碼和添加了第二個後端。我已經將一些任務從前端移動到新的後端,並且他們工作正常。但是,我想將最初在下載文件後端和上運行的任務移動到新的後端(以節省實例時間)。我只是通過改變目標的名字到新的後端即
taskqueue.add(queue_name = "organise-files",
url=queue_organise_files,
target='organise-files-backend')
然而,儘管賦予新的後端名稱的任務仍然由老的後臺運行目標這樣做。任何想法爲什麼發生這種情況,或者我可以如何解決它?
編輯: 舊的後端正在運行新的任務 - 我已經檢查過了。
我也已經通過我的所有代碼來檢查是否有任何東西調用舊的後端,什麼都沒有。只有兩種將任務添加到舊後端的方法,並且這兩種方法都已如上所述進行了更改。
我停止了幾個小時的舊後端,看看這是否會改變任何事情,但發生的一切都是任務被卡住,直到我重新啓動後端。新的後端正在運行其他任務很好,所以它肯定已被正確更新...
我無法重現這一點。原始後端隊列中仍然有一些任務(從更改之前)仍然可以執行嗎?您可能會檢查的另一件事是您是否在更改後根據需要重新部署後端。 – 2012-03-05 02:22:42
我已經更新了該帖子,並提供了更多的細節以迴應您的疑問。 – user714852 2012-03-05 14:15:41