2016-05-16 70 views
0

爲了改進AWS Lambda中的冷啓動延遲,我嘗試僅爲每個Lambda函數包含必需的類。如何僅包含SDK的DynamoDB部分,而不是包含整個SDK?如何在Lambda中僅包含aws-sdk中的一個類

// Current method: 
var AWS = require('aws-sdk'); 
var dynamodb = new AWS.DynamoDB(); 

// Desired method: 
var AWSdynamodb = require('aws-dynamodb-sdk'); 

回答

4

簡短的回答是:你不需要這樣做。

適用於JavaScript的AWS開發工具包使用動態要求來加載服務。換句話說,定義了這些類,但是the API data is only loaded when you instantiate a service object,因此整個程序包沒有CPU開銷。

唯一可能的成本來自磁盤空間使用(和下載時間),但請注意,Lambda已將其包裝上的aws-sdk包裝結束,因此沒有下載時間,實際上您使用的磁盤空間更少使用Lambda提供的SDK包比使用自定義的東西。