Ich fühle Ihren Prozess (mosquitto) die maximale Anzahl offener Dateien Grenze erreicht haben. Überprüfen Sie Ihre maximal geöffneten Dateien unter ulimit -n
. Erhöhen Sie dann das Limit auf die maximale Anzahl der von Ihnen erwarteten Verbindungen. Z.B. Für 10k-Verbindung wäre es ulimit -n 10000
Ein Hinweis auf ulimit (1). Es ist nur für das aktuelle Terminal eingestellt und für dauerhafte Änderungen müssen Sie die Konfigurationsdateien gemäß Ihrem Linux-Geschmack bearbeiten (/etc/security/limits.conf + /etc/pam.d/common-session* on Ubuntu).
Die maximale Anzahl offener Dateien ist 1000000, viel größer als die Verbindungsnummer. –
@FengChris Überprüfen Sie den Benutzeraccount, mit dem mosquitto ausgeführt wird. Ist es ein angemeldeter Benutzer oder Benutzer in der mosquitto.conf? Überprüfen Sie dann das Limit für diesen Benutzer. – Kiran
Ich habe Supervisor verwendet, um mosquitto zu starten, und die max. Offenen Dateien wurden standardmäßig von Supervisor auf 1024 begrenzt. Add 'minfds = 1000000' in'/etc/supervisor/supervisord.conf' kann dieses Problem lösen. –