Support for setting keepAliveTimeout
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Anfängerfreundlichkeit
- 72/100
- Issue-Typ
- Feature
- Klarheit
- Größtenteils klar
- Aktivitätsstatus
- Ruhig
- Tech-Stack
- docker, node.js
- Bereich
- backend
Rechercherichtung
Der relevante Einstiegspunkt ist die HTTP/HTTPS-Serverkonfiguration, die httpServer und httpsServer erstellt; beginne damit nachzuverfolgen, wie der Echo-Container Laufzeit-Umgebungsvariablen liest. Füge für beide Server ein konfigurierbares Keep-Alive-Timeout hinzu, einschließlich des im Issue gezeigten zugehörigen headers-timeout-Verhaltens, und verifiziere, dass der Container weiterhin startet und HTTP/S-Anfragen mit und ohne diese Einstellung akzeptiert.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Hi,
I was making some tests with the Echo container, including ensuring connection pool logics / configuration.
Currently this is taking the default 5s Node keepAliveTimeout which will then start dropping connections. If we would be able to stablish the keepAliveTimeout we would be able to allow the consumer side to manage the connections.
I've hacked a solution as:
// How long an idle keep-alive connection is held before the server closes it.
// Node's default is 5s, so an upstream keep-alive pool in front of this server can never be observed intact.
// Raising it past the drain time lets the pool settle and leaves the reverse proxy in charge of trimming it.
const keepAliveTimeoutMs = parseInt(process.env.KEEPALIVE_TIMEOUT_MS, 10);
if (Number.isFinite(keepAliveTimeoutMs) && keepAliveTimeoutMs > 0) {
for (const server of [httpServer, httpsServer]) {
server.keepAliveTimeout = keepAliveTimeoutMs;
// headersTimeout bounds how long a started request may take to send its headers;
// keeping it above keepAliveTimeout stops Node from closing a pooled connection just as it is being reused.
server.headersTimeout = keepAliveTimeoutMs + 5000;
}
console.log(`Keep-alive timeout set to ${keepAliveTimeoutMs}ms (headers timeout ${keepAliveTimeoutMs + 5000}ms).`);
}
- Vorherrschende Sprache
- Shell
- Sterne
- 792
- Forks
- 152
- Ø Merge
- 3 T. 18 Std.
- Gemergte PRs (30 T.)
- 3
Beitragsleitfaden
Für dieses Repository ist kein Beitragsleitfaden indexiert
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus mendhak/docker-http-https-echo
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 42/100
mendhak/docker-http-https-echo#86 · 3 Kommentare ·
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 35/100
mendhak/docker-http-https-echo#80 · 2 Kommentare ·
-
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 35/100
-
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 38/100
mendhak/docker-http-https-echo#60 · 1 Kommentar ·
-
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 45/100
mendhak/docker-http-https-echo#59 · 1 Kommentar ·
Alle Issues in mendhak/docker-http-https-echo
Ähnliche Issues
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100
elastic/gradle-plugins#156 ·
-
Priority/High ready-for-agent Severity/Major Type/Bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100
-
comp/cli P3 type/docs
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100
NousResearch/hermes-agent#119756 · 1 Kommentar ·
-
comp: build/pipeline type: bug version: current (v17+)
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 74/100
angular/angularfire#3766 ·
-
out-of-date
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 70/100
CachyOS/CachyOS-PKGBUILDS#1903 ·