Beim Skalieren von TCP-Proxys auf 100.000 gleichzeitige Verbindungen stoßen Ingenieure oft auf unerwartete Grenzen. Diese Fallstudie untersucht, warum Nginx bei 40.000 Verbindungen ins Stocken gerät, und analysiert Kernel-Parameter, Dateideskriptor-Limits und Nginx-Worker-Einstellungen. Der Autor führt durch systematische Diagnosen und zeigt, dass häufige Standardwerte wie somaxconn und net.core.rmem_max häufige Übeltäter sind. Praktische Tuning-Empfehlungen umfassen die Anpassung von Backlog-Warteschlangen, die Erhöhung von worker_connections und die Optimierung der epoll-Ereignisbehandlung. Der Beitrag betont, tatsächliche Limits zu messen, statt sich auf theoretische Maxima zu verlassen. Für Teams, die Hochkonkurrenz-Gateways bauen, unterstreichen diese Erkenntnisse die Bedeutung eines ganzheitlichen System-Tunings über die Nginx-Konfiguration hinaus.
Eine praktische Analyse von Nginx-TCP-Proxy-Engpässen, die zeigt, wie Kernel- und Konfigurationslimits den Durchsatz bei 40K Verbindungen deckeln.