2012-01-20 64 views
1

我建立一個基於Web的照片庫。使用亞馬遜EC2,我想能夠「旋轉起來」機器生成縮略圖,當負載較高,並且旋轉下來,當負載較低。處理Amazon EC2排隊生成縮略圖的一些好方法是什麼?

我在想什麼是有需要有自己的縮略圖生成的圖像數據庫表,與像以下字段:

image_id (32-char string) 
thumbs_generated (true or false) 
currently_generating (true or false) 
s3_key (32-char string) 

當一個新的EC2實例旋轉起來,它會連接到數據庫並檢索其中thumbs_generated和now_generating都設置爲false的圖像。一旦圖像被檢索,now_generating被設置爲true。生成完成後,thumbs_generated設置爲true,並且腳本重複顯示新圖像。

這是一個很好的策略?從經驗中記住任何改進或事項?

這會是一個很好的用例亞馬遜的簡單的信息服務,或者是不是有必要嗎?

在此先感謝。

回答

1

您可能能夠通過使用Amazon SQS(簡單隊列服務)這樣做。

您必須將您的縮略圖生成分解爲兩部分,一部分向SQS隊列發送有關生成拇指(以及該圖像存在的位置)的圖像以及在不同機器上運行的工作進程的消息輪詢隊列,生成拇指並將成功報告給您需要報告結果的任何機制(可以是附加隊列或其他同步機制)。

這樣,當您在不同的機器上有您的工作進程時,您可以根據隊列的大小設置自動擴展規則。

退房this post,對別人誰做了類似的事情。

相關問題