我正在使用 AWS Lambda 使用 ffmpeg 呈現視頻。這是下載外部剪輯、合并這些剪輯、然后將結果上傳到 S3 的基本功能。
此功能需要能夠快速擴展,因為我需要在短時間內生成大量視頻。
問題是我達到了/tmp512MB 的磁盤限制,因為不同的請求重用了相同的 lambda 環境。我增加了記憶體限制以暫時解決問題,但感覺不可擴展。
我已經研究過 EFS,但是對于我的簡單需求來說,使用 VPC 和 NAT 來訪問 Internet 的要求聽起來確實很繁重。
有沒有辦法直接在 S3 中輸出 ffmpeg 的結果(因此不需要臨時檔案夾)?或者如果記憶體快滿了,可能會強制重新生成一個干凈的 lambda 環境?
uj5u.com熱心網友回復:
請參閱AWS Lambda 現在支持高達 10 GB 的臨時存盤:
AWS Lambda 現在允許您配置介于 512 MB 和 10,240 MB 之間的臨時存盤 (/tmp)。您現在可以控制函式用于讀取或寫入資料的臨時存盤量,允許您將 AWS Lambda 用于 ETL 作業、ML 推理或其他資料密集型作業負載。
請注意,您的 Lambda 函式的每次呼叫都可以安全地洗掉其中存在的檔案/tmp- 您永遠不會有兩個使用相同運行時環境的并發 Lambda 呼叫。那里存在的任何檔案都是從先前的、現在已完成的 Lambda 函式呼叫中遺留下來的。如果不需要將檔案從一個 Lambda 呼叫共享到下一個,那么您的 Lambda 函式可以在退出之前洗掉這些檔案,以確保下一個呼叫具有干凈的/tmp檔案夾。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/458808.html
