[英]How to design multiclient preprocess software pipeline using aws?
我的軟件目標是自動化預處理管道,管道有三個代碼塊:
獲取數據 - 通過 api 或通過客戶端將 csv 上傳到 s3 存儲桶。
處理數據——我的目標是將來自不同客戶端的數據統一到一個統一的端方案。
存儲方案是數據庫。 我知道這是一個非常常見的系統,但我找不到最適合它的設計。
要求是:
我想到了以下幾點:
The lambda solution: schedule a lambda for each client which will fetch the data every X days, the lambda will trigger another lambda which will do processing. 但是如果我有 100 個客戶端,那么處理 200 個 lambda 表達式會很糟糕。
2.1 制作一個名為 Api 的項目,並為每個客戶提供不同的腳本,我對 ec2 或 ecs 上的每個腳本都有一個 schudle。
2.2 有另一個項目調用處理,父class有公共代碼,所有子類客戶端代碼都繼承自它,API腳本將激活相關處理腳本。
最后,我很困惑什么是最佳實踐,我只找到了處理一個客戶端的示例,或者一個廣泛的通用方案方法/圖表塊。 因為我知道它是一個如此普遍的系統,所以我會很感激從其他人的經驗中學習。 將不勝感激任何參考鏈接或智慧
看一下Step Functions ,它將允許您解耦每個階段的執行並允許您重用您的 Lambda。
通過將輸入傳遞到步驟 function 頂部 Lambda 可能能夠做出提供給其他人的決策。
要安排此操作,請使用已安排的CloudWatch 事件
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.