我有一个 Lambda 函数,其配置位于外部源(例如 S3)中。
为了节省一些计算时间,该函数在第一次执行时加载配置并将其保存在内存中。
我希望能够告诉此 Lambda 函数的所有正在运行的实例按需重新加载配置。
在下面的代码片段中,当事件具有“reload”属性时,Lambda 函数会重新加载配置。但显然只有一个正在运行的实例获得该事件。
// Function to process events
var processEvent = function(event,callback) {
// process event
}
// Function to update configuration
var config; // global object representing configuration
var updateConfiguration = function(callback) {
// ... load asynchronously from S3
}
// Handle events
exports.handler = function(event, context, callback) {
if (event.reload) {
updateConfiguration(callback); // load configuration
} else if (!config) {
updateConfiguration(function() { // load …Run Code Online (Sandbox Code Playgroud)