저는 동일한 웹소켓 서버(go 서버)에 연결된 클라이언트 풀을 생성하여 들어오는 요청을 처리하는 성능과 능력을 테스트하려고 합니다.
예를 들어, 28233개의 고릴라 클라이언트(웹소켓 클라이언트)에 도달했을 때 프로그램이 더 이상 생성할 수 없다는 것을 보았기 때문에 어떻게 100,000명의 클라이언트에 도달할 수 있는지 궁금했습니다.
다음과 같은 오류가 발생합니다
으아악미리 감사드립니다
127.0.0.1에서 127.0.0.1:8000까지 100k 병렬 클라이언트 연결이 불가능합니다. 이러한 각 병렬 클라이언트 연결에는 서로 다른 소스 포트가 있어야 하며(그렇지 않으면 다른 연결이 아님) 64k 소스 포트만 사용할 수 있습니다. 실제로는 시스템이 임시 포트에서 시작되거나 그보다 더 적은 숫자(OS 및 구성에 따라 다름)보다 적습니다.
동일한 대상 IP 및 포트에 대한 다른 연결에서 사용하지 않는 고유한 소스 포트를 시스템이 선택할 수 없는 경우 "요청한 주소를 할당할 수 없습니다"라는 메시지가 표시됩니다.
더 많은 병렬 연결을 지원하려면 소스 포트뿐만 아니라 연결의 다른 매개변수를 변경해야 합니다. 일반적으로 이는 단일 서버 소켓을 사용하는 것이 아니라 서로 다른 포트에서 수신 대기하는 여러 소켓을 사용하여 수행됩니다.
위 내용은 내 로컬 호스트에서 28233개 이상의 웹소켓 연결을 가질 수 없습니다(스트레스 테스트용). Go 클라이언트(고릴라) |의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!