Skip to content

Commit cc28d2f

Browse files
mcollinadanielleadams
authored andcommittedJan 12, 2021
http: set lifo as the default scheduling strategy in Agent
PR-URL: #36685 Reviewed-By: Anna Henningsen <[email protected]> Reviewed-By: Michaël Zasso <[email protected]> Reviewed-By: Robert Nagy <[email protected]> Reviewed-By: James M Snell <[email protected]> Reviewed-By: Luigi Pinca <[email protected]> Reviewed-By: Daijiro Wachi <[email protected]> Reviewed-By: Ruben Bridgewater <[email protected]> Reviewed-By: Rich Trott <[email protected]>
1 parent ef62889 commit cc28d2f

File tree

3 files changed

+8
-5
lines changed

3 files changed

+8
-5
lines changed
 

‎doc/api/http.md

+4-1
Original file line numberDiff line numberDiff line change
@@ -113,6 +113,9 @@ http.get({
113113
<!-- YAML
114114
added: v0.3.4
115115
changes:
116+
- version: REPLACEME
117+
pr-url: https://github.com/nodejs/node/pull/36685
118+
description: Change the default scheduling from 'fifo' to 'lifo'.
116119
- version:
117120
- v14.5.0
118121
- v12.19.0
@@ -159,7 +162,7 @@ changes:
159162
In case of a high rate of request per second,
160163
the `'fifo'` scheduling will maximize the number of open sockets,
161164
while the `'lifo'` scheduling will keep it as low as possible.
162-
**Default:** `'fifo'`.
165+
**Default:** `'lifo'`.
163166
* `timeout` {number} Socket timeout in milliseconds.
164167
This will set the timeout when the socket is created.
165168

‎lib/_http_agent.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -105,7 +105,7 @@ function Agent(options) {
105105
this.keepAlive = this.options.keepAlive || false;
106106
this.maxSockets = this.options.maxSockets || Agent.defaultMaxSockets;
107107
this.maxFreeSockets = this.options.maxFreeSockets || 256;
108-
this.scheduling = this.options.scheduling || 'fifo';
108+
this.scheduling = this.options.scheduling || 'lifo';
109109
this.maxTotalSockets = this.options.maxTotalSockets;
110110
this.totalSocketCount = 0;
111111

‎test/parallel/test-http-agent-scheduling.js

+3-3
Original file line numberDiff line numberDiff line change
@@ -56,11 +56,11 @@ function defaultTest() {
5656

5757
bulkRequest(url, agent, (ports) => {
5858
makeRequest(url, agent, (port) => {
59-
assert.strictEqual(ports[0], port);
59+
assert.strictEqual(ports[ports.length - 1], port);
6060
makeRequest(url, agent, (port) => {
61-
assert.strictEqual(ports[1], port);
61+
assert.strictEqual(ports[ports.length - 1], port);
6262
makeRequest(url, agent, (port) => {
63-
assert.strictEqual(ports[2], port);
63+
assert.strictEqual(ports[ports.length - 1], port);
6464
server.close();
6565
agent.destroy();
6666
});

0 commit comments

Comments
 (0)