Skip to content

Commit 6131f56

Browse files
glynnbirdGlynn Bird
andauthored
ensure only one HttpAgent is created (not one per request) - fixes issue #234 (#235)
Co-authored-by: Glynn Bird <glynnbird@apache.org>
1 parent 8e52b3d commit 6131f56

File tree

1 file changed

+4
-2
lines changed

1 file changed

+4
-2
lines changed

lib/nano.js

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,8 @@ const http = require('http')
2020
const https = require('https')
2121
const pkg = require('../package.json')
2222
const AGENT_DEFAULTS = { keepAlive: true, maxSockets: 50, keepAliveMsecs: 30000 }
23+
const defaultHttpAgent = new http.Agent(AGENT_DEFAULTS)
24+
const defaultHttpsAgent = new https.Agent(AGENT_DEFAULTS)
2325
const ChangesReader = require('./changesreader.js')
2426

2527
function isEmpty (val) {
@@ -331,8 +333,8 @@ module.exports = exports = function dbScope (cfg) {
331333
} else if (opts.dontParse) {
332334
req.responseType = 'arraybuffer'
333335
}
334-
req.httpAgent = cfg.requestDefaults.agent || new http.Agent(AGENT_DEFAULTS)
335-
req.httpsAgent = cfg.requestDefaults.agent || new https.Agent(AGENT_DEFAULTS)
336+
req.httpAgent = cfg.requestDefaults.agent || defaultHttpAgent
337+
req.httpsAgent = cfg.requestDefaults.agent || defaultHttpsAgent
336338

337339
// actually do the HTTP request
338340
if (opts.stream) {

0 commit comments

Comments
 (0)