Skip to content

Commit 278c91c

Browse files
committed
http: set lifo as the default scheduling strategy in Agent
PR-URL: #36685 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Michaël Zasso <targos@protonmail.com> Reviewed-By: Robert Nagy <ronagy@icloud.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Daijiro Wachi <daijiro.wachi@gmail.com> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By: Rich Trott <rtrott@gmail.com>
1 parent dd14dba commit 278c91c

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
@@ -161,7 +164,7 @@ changes:
161164
In case of a high rate of request per second,
162165
the `'fifo'` scheduling will maximize the number of open sockets,
163166
while the `'lifo'` scheduling will keep it as low as possible.
164-
**Default:** `'fifo'`.
167+
**Default:** `'lifo'`.
165168
* `timeout` {number} Socket timeout in milliseconds.
166169
This will set the timeout when the socket is created.
167170

lib/_http_agent.js

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

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)