2013-08-22 73 views
0

我正在寫一個簡單的手機遊戲,其中服務器需要頻繁和定期更新遊戲狀態(例如每秒更新所有活動遊戲)。更新在谷歌應用引擎循環

我試圖實現使用谷歌應用程序引擎,但最明顯的方法服務器要做到這一點似乎有致命的缺陷:

的Cron:這將是理想的,但它有一個1最大分辨率分鐘,這對我的目的來說太長了。 TaskQueue:這可能有效,但它似乎並不能保證何時(或甚至)運行任務。

有沒有一種方法可以使用谷歌App Engine來可靠地實現我正在尋找的東西或者我應該在其他地方看看?

回答

1

您可以有一個不斷運行的手動縮放實例,並會每秒發出一個「打勾」。

總的來說,您的設計和App Engine是不適合彼此的。仍然很難保證所有的滴答作業都在1秒內處理完畢。如果您使用數據存儲區,則需要格外小心以確保最終的一致性不會讓您感到困擾。

+0

謝謝。有沒有一種服務可以用於這樣的設計? – Huhwha

+0

在整個系統中依賴滴答的整個想法對於動態縮放來說是一個壞主意。它可以在你有固定數量的服務器的地方工作,這些服務器不需要任何啓動時間(即總是運行)。這可以使用AWS或任何其他傳統託管提供商完成。 – dragonx

1

您需要查看appengine後端,而不是任務隊列。它們運行時間更長,但您仍然需要在重新啓動時自動關閉它。否則看看你可以永遠保持的谷歌計算實例。