2014-01-29 2 views
1

우분투 컴퓨터에서 very simple express server, with a PUT and GET routes을 사용하고 있지만 동시에 여러 클라이언트 (약 8 명)가 요청을 동시에 수행하면 매우 쉽게 침수되어 connect EADDRNOTAVAIL 오류를 반환하기 시작합니다. 나는 클라이언트 당 요청의 수를 줄이는 것 이외의 다른 방법을 피할 방법을 찾지 못했지만 오류를 반환하는 대신 요청을 대기열에 넣고 정시에 처리하도록 서버에서 응답을 제한하는 방법이 있습니까? 클라이언트에 대한 요청에 대한 응답이 있는지 확인하고 요청이없는 경우 새 요청을 삽입하지 않는 것이 좋습니다. Client is here스로틀 익스프레스 서버

+0

서버를 실행중인 OS는 무엇입니까? –

+0

운영 체제를 추가하도록 편집되었습니다. – jjmerelo

답변

1

대기열이 잘못되었으므로 먼저 현재 ulimit (모든 연결에 핸들이 필요함)을 확인해야합니다.

just change the ulimit 문제를 해결하려면 다음을 수행하십시오.

+0

node.js 수준이 아닌 운영 체제 수준에서 수정해야한다고 생각하십니까? – jjmerelo

+0

예, 코드 내부의 HTTP 요청을 큐에 넣는 것은 잘못된 것 같습니다 (최소한 제 의견으로는) – hereandnow78

+0

하지만 큐는 명시 적으로 수행되지 않고 단일 스레드 인 node.js 인터프리터에 의해 암시 적으로 수행됩니다. – jjmerelo

관련 문제