2011-06-28 80 views
8

我將幾個任務放入任務隊列中,並想知道具體任務何時完成。我在API中沒有發現任何有關回調或檢查任務狀態的內容,所以我想我會看看其他人做了什麼,或者是否有工作(或官方)方法來檢查。我不關心個人任務,如果有幫助的話,我正在完成6個不同的任務,並且想知道所有6個任務完成的時間。檢查Google App Engine中任務隊列的狀態

謝謝!

回答

4

新的REST/JSON任務隊列API將允許您執行此操作。

http://code.google.com/appengine/docs/python/taskqueue/rest.html

這不很好地擴展到數千個任務...

我喜歡的管道API建議,但!

+0

你能解釋一下新的任務隊列API如何完成這個任務嗎?您可以獲取任務,但似乎沒有包含任何狀態或成功或失敗的指示。 –

1

您可以使用memcache。使用特定於此任務組的唯一密鑰。當你啓動你的任務時設置一個計數,並讓每個任務以原子方式遞減它。值爲0時,您的任務已完成。發現此值爲0的任務可以調用您的回調函數。

+2

這個memcache可能會消失,因爲它沒有保證留下來嗎?僅僅在數據存儲中備份它是不夠的,因爲保存期間的競爭條件。人們如何處理? –

+1

我認爲你可以通過使用事務處理保存到數據存儲時的競爭條件。 –

相關問題