Hallo Freunde. Nginx ist als Webserver sehr beliebt, aber wie immer ist es nicht perfekt und kann uns einige Fehler bereiten. Heute erfahren Sie in diesem Beitrag, wie Sie den Fehler Worker Connections are not enough auf Nginx beheben können. So können Sie Kopfschmerzen beim Verwalten eines Servers vermeiden. Los geht's.
Worum geht es bei diesem Fehler?
Wenn Nginx eine Website mit vielen Anfragen bearbeitet, kommt es häufig vor, dass sie irgendwann abstürzt. Dies geschieht, weil ein Limit an empfangenen Anfragen erreicht wird.
Es gibt einige mögliche Lösungen, aber die beste ist, Nginx dazu zu bringen, mehr davon zu verarbeiten. Das heißt, wir müssen dafür sorgen, dass mehr Anfragen bearbeitet werden als die Standardnummer, die 1024
ist für neuere Versionen.
Die Anzahl der Anforderungen, die wir definieren können, ist durch die Anzahl der Ressourcen begrenzt, die unser Computer hat, insbesondere im Arbeitsspeicher.
Beheben wir also diesen Fehler.
Worker-Verbindungen sind nicht genug Fehler auf Nginx behoben
Um diesen Fehler zu beheben, müssen wir die Nginx-Konfigurationsdatei bearbeiten. Wenn Sie jedoch mehrere Sites erstellt haben, müssen Sie die Konfigurationsdatei jeder Site öffnen, an der die Änderung erforderlich ist.
Die Nginx-Konfigurationsdatei ist /etc/nginx/nginx.conf
und für eine benutzerdefinierte Site ist es /etc/nginx/sites-enabled/your-site.conf
.
Jede dieser Dateien kann mit einem Texteditor wie vi
geöffnet werden , nano
oder vim
mit Root-Rechten.
Sobald Sie sie öffnen, müssen Sie einen Abschnitt namens events
hinzufügen und ein worker_connections
Richtlinie, die eine Zahl angibt, die mehr und mehr Anfragen akzeptiert.
Zum Beispiel
events {
worker_connections 2048;
}
Denken Sie daran, dass der Wert der Direktive beliebig sein kann, aber durch den auf Ihrem Computer verfügbaren Speicher begrenzt wird. Es sollte auch beachtet werden, dass dies den Verbrauch von Nginx erhöhen wird.
Speichern Sie die Änderungen und schließen Sie den Texteditor
Überprüfen Sie die Nginx-Konfigurationssyntax mit der Befehlszeile
sudo nginx -t
Wenn es keine Fehler gibt, starten Sie Nginx einfach neu.
sudo systemctl restart nginx
Und Sie sind fertig.
Schlussfolgerung
nginx ist ein sehr effizienter Webserver, der nicht frei von Problemen ist, und einige davon können durch Ändern bestimmter Parameter gelöst werden. Heute haben wir zum Beispiel gesehen, wie man einen Fehler behebt, der für die Besucher unserer Seite lästig sein kann.
Helfen Sie uns und teilen Sie diesen Beitrag.