2016-08-11 2 views

답변

1

나는 프로세스 (mosquitto)가 열린 파일 설명자 제한의 최대 수를 명중했다 생각합니다. 최대 열린 파일을 ulimit -n으로 확인하십시오. 그런 다음 최대 연결 수 제한을 늘리십시오. 예 : 10k 연결의 경우 ulimit -n 10000

ulimit (1)에 대한 메모입니다. 현재 터미널에 대해서만 설정되어 있으며 영구적 인 변경 사항에 대해서는 사용자의 Linux 버전에 따라 구성 파일을 편집해야합니다 (/etc/security/limits.conf + /etc/pam.d/common-session* on 우분투).

+0

최대 열린 파일 수는 1000000으로 연결 번호보다 훨씬 큽니다. –

+0

@FengChris 모스키토가 실행되는 사용자 계정을 확인하십시오. 사용자 또는 사용자가 mosquitto.conf에 로그인되어 있습니까? 그런 다음 해당 사용자의 한계를 확인하십시오. – Kiran

+1

필자는 수퍼바이저를 사용하여 모스키토를 시작했으며 수퍼바이저가 기본값으로 1024 개로 제한된 최대 열린 파일을 사용했습니다. '/ etc/supervisor/supervisord.conf '에'minfds = 1000000'을 추가하면이 문제를 해결할 수 있습니다. –

-1

이 오류 메시지가 나타나는 다른 이유가있을 수 있습니다. 클라이언트가 연결을 시도하고 액세스가 TCPD에 의해 거부 된 경우 동일한 메시지가 로그에 표시됩니다. 연결하려면 hosts.allow (내 경우에는 localhost 127.0.0.1)를 조정해야합니다.

+0

이것은 정말로 논평입니다. 답이 아니라 전혀 문제가되지 않을 수도 있습니다. 조금 더 많은 담당자와 함께 [주석을 게시 할 수 있습니다] (// stackoverflow.com/privileges/comment). – Marc

관련 문제