2014-04-29 60 views
1

我有一個在後端運行的拉隊列。當尖峯高時,我從前端調用它。自動縮放後端 - Appengine Java

拉入隊列有成千上萬的任務,需要一段時間。一個前端請求開始處理。

我期待從我的代碼中啓動更多的後端,以便它們可以從拉隊列中拉出任務並開始執行它們。但是,我不清楚如何做到這一點。

請幫忙。

謝謝。

回答

0

您需要使用後端到模塊遷移代碼:https://developers.google.com/appengine/docs/java/modules/

然後你可以使用基本的縮放,以指定要自動創建的實例的最大數量。

UPDATE:

隨着你必須自己實現負載均衡的邏輯拉入隊列。

+0

基本縮放將根據請求進行平衡。由於這裏沒有要求,我需要手動縮放比較好。但是,我沒有看到停止特定模塊的方法。這就是我的想法。當我看到大約10k個任務時,我爲每個3k個任務創建一個實例,其中每個任務都是4個左右。我從4開始,並在/ _ah/start中開始抽取所有隊列。現在任務已完成,我正在停止。如何停止知道它已完成的模塊?我沒有看到stop_me :)?我看到可以阻止任何可能正在執行任務的隨機實例的numinstances。謝謝。 – cloudpre

+0

通過在目標模塊上創建請求來執行隊列中的任務。 –

+0

您不需要啓動或停止實例。您可以在隊列上設置所需的執行速率以及要創建的最大實例數。就是這個。如果隊列無法跟上期望的執行速率,則調度程序將自動創建更多實例。當負載下降時,調度程序將自動停止冗餘實例。 –