我有一些Nodejs函数,其中包含重复的代码块。 我知道我们可以对共享库使用lambda层,但是我想知道,是否也可以共享代码? 例如,下面显示了重复的代码之一
const connection = mysql.createPool({
host: process.env.DB_HOST,
database: process.env.DB_NAME,
user: process.env.DB_USER,
port: process.env.DB_PORT,
password: process.env.DB_PASSWORD
});
我想将此块导入到多个函数中,而不必一遍又一遍地写
答案 0 :(得分:0)
除了使用层(这可能只是共享代码的一个杀伤力)之外,您还可以使用另外两个路由器:
lambda1.js
,lambda2,js
和shared.js
)。然后,您需要将lambda1
打包为一个包含lambda1.js
和shared.js
的zip文件。alllambda.js
),并配置不同的处理函数(exports.handler1
,exports.handler2
)-配置AWS Lambda函数时,{ {1}}已将Lambda1
配置为Handler
,而handler1
具有Lambda2
。显然,这不能很好地扩展(并且具有共享初始化代码的额外缺点)。答案 1 :(得分:0)
一个选项是使用所有共享代码创建单独的Lambda。然后,您可以从所有其他lambda中调用共享的Lambda,或使用“主要” lambda处理后部/后部。