NodeJS:在脚本之间共享猫鼬连接

时间:2019-11-06 11:34:05

标签: node.js mongodb mongoose

比方说,我有一个.js文件,该文件在开始时通过Mongoose建立MongoDB连接,然后执行一些逻辑,然后执行另一个也需要Mongoose连接的脚本。 问题是,脚本看不到其父级创建的连接,因此会初始化一个新的连接。

父脚本的代码段:

initDBConnection();
doProcessing();
child_process.execSync('npm run migrations'); // here the child script gets executed
doAnotherProcessing();

所以问题是,是否可以通过某种方式共享由父级创建的猫鼬连接,以免子级脚本被迫建立新的连接。

注意:脚本是用于迁移的npm库

编辑 我面临的唯一问题是,在父脚本的生存期内,与数据库的连接创建的过程不止一次。

第一次child_process.execSync('npm run migrations');运行之前

migrations脚本中

第二次

目标是使用在执行子进程之前创建的数据库连接。

1 个答案:

答案 0 :(得分:0)

mongodb连接是在运行节点进程的mongodb节点驱动程序中创建的运行时对象。您不能将此对象传递给另一个节点启动。