5

阅读文档后:https ://github.com/brianc/node-pg-pool ,我有点担心重用该new Pool()方法。

文档建议我需要放置new Pool()之前exportsreturn就像这样

// db.js
const pool = new Pool();
module.exports = () => { return pool; }

这样我可以重用Pool直到idleTimeoutMillisor client.release(),通过使用require()其他文件例如:

const connect = require('./db')
connect().query(' .... ');  

如果这是正确的,它是如何工作的?node.js 是否缓存new Pool(), 因为它不在里面module.exports

4

1 回答 1

4

是的,它被有效地缓存了,因为您只创建了一次(并且节点缓存了模块),并且您总是在导出的方法中引用同一个实例。

于 2016-08-21T03:34:34.197 回答