gpt4 book ai didi

aws-lambda - AWS Lambda 函数的运行时配置

转载 作者:行者123 更新时间:2023-12-02 22:53:10 24 4
gpt4 key购买 nike

我有一个 AWS Lambda 函数,需要连接到远程 TCP 服务。将 Lambda 函数部署到 AWS 后,是否可以使用远程服务的 IP 地址来配置 Lambda 函数?或者我是否必须在部署之前将配置烘焙到打包的 Lambda 函数中?

最佳答案

我找到了一种用于支持测试环境和生产环境的方法,这将为您提供帮助。

对于该函数的测试版本,我将其命名为 TEST-ConnectToRemoteTcpService;对于该函数的生产版本,我将其命名为 PRODUCTION-ConnectToRemoteTcpService。这允许我使用正则表达式提取环境名称。

然后,我将 config/test.jsonconfig/development.json 存储在作为函数代码上传的 zip 文件中。当函数运行时,该 zip 文件将被提取到目录 process.env.LAMBDA_TASK_ROOT 中。这样我就可以加载该文件并获取我需要的配置。

有些人不喜欢将配置存储在代码 zip 文件中,这很好 - 您可以从 S3 加载文件或使用您喜欢的任何策略。

从 zip 中读取文件的代码:

const readConfiguration = () => {
return new Promise((resolve, reject) => {
let environment = /^(.*?)-.*/.exec(process.env.AWS_LAMBDA_FUNCTION_NAME)[1].toLowerCase();
console.log(`environment is ${environment}`);

fs.readFile(`${process.env.LAMBDA_TASK_ROOT}/config/${environment}.json`, 'utf8', function (err,data) {
if (err) {
reject(err);
} else {
var config = JSON.parse(data);
console.log(`configuration is ${data}`);
resolve(config);
}
});
});
};

关于aws-lambda - AWS Lambda 函数的运行时配置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33336261/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com