在创建与arangojs npm模块的arangodb连接时,通过如下方式:
function createConnection(connectionUrl, databaseName) {
var connectionProps = {
url: connectionUrl,
databaseName: databaseName
};
var connection = new Database(connectionProps);
callback(null, connection);
}此数据库对象是要在应用程序的生存期内生存,还是只进行一次连接?
当我们为每个查询创建一个新的连接时,我们正经历一个内存泄漏,“缓存”连接似乎解决了这个漏洞。
如果连接永远存在,它的行为是否像连接池?如果空闲,这些连接会超时吗?
文档让我相信我最初是错的,是的,它是一个连接池,但是对上述问题的确认将是非常棒的!
发布于 2017-12-11 10:37:38
从我们自己的调查来看,似乎是的,这个对象的目的是“永远”存在,并被反复使用,因为它是使用代理创建的。它可能被配置为“一次连接”,这取决于传入的agentOptions。这还没有经过测试,对于经常使用的连接来说,这可能是一项昂贵的操作。
https://stackoverflow.com/questions/47703443
复制相似问题