2017-09-20 38 views
0

我是AWS世界的新手,我一直陷在一種情況下,我想發送一個下載文件的URL到亞馬遜lightsails服務器,這是一個輕量級版本的EC2,從那裏文件將被下載到s3。AWS SQS觸發從lambda到亞馬遜Lightsails

現在,這裏有可能是一個批次產生和拉姆達傳遞,但我的亞馬遜光帆服務器無法同時處理所有那些大型運營和我想到了用AWS SQS

我要在那裏傳送數據的下載文件網址(下載URL,將文件上傳到s3的證書)到我的aws SQS和他們的SQS將創建一個最多10個條目的隊列,然後以同步的方式觸發和發送數據到亞馬遜lightsails服務器,以便不會有任何阻塞或服務器端出現瓶頸情況。任何想法如何能夠實現?

在此先感謝!

+0

您能否進一步解釋您的用例?提出解決方案 – Ashan

回答

0

AWS SQS無法將數據發送(推送)到服務器。從您的lightsails服務器,您將不得不輪詢SQS。你可以查詢一批

所以在你光帆服務器說10條消息(根據您的處理能力),然後當你通過處理該民意調查下一批請求

0

你描述一個常見的場景其中AWS Lambda不適合作爲最終累計服務,因爲磁盤消耗的時間不可預知的時間量爲&。必須使用Lightsails(EC2)。

您可以使用Lambda爲使用任何AWS開發工具包向SQS發送新的消息/作業。您的Lightsails服務器現在必須輪詢用於SQS隊列中的掛起消息。

如果您有一些與隊列長度或保留期限或任何規模相關問題有關的限制,您可以再次使用計劃的lambda函數來檢查隊列並水平縮放許多Lightsails(EC2)實例這個需要。

Here你可以找到一個有用的職位。您的解決方案可能如下所示:

enter image description here

+0

如果它的計算量很高,我不會推薦使用Lightsail。這是EC2的成本效益型變體,作爲輕量級網絡託管的單獨服務提供。如果負載很高,並且需要專門的服務(如緩存,網絡和IO優化等),則可以使用EC2。 – Ashan