2012-08-17 3 views
0

초당 요청 수가 1,000 개가 될 node.js 서비스를 개발 중입니다. 응답 데이터가 약간 크고 고객과의 연결이 매우 느립니다. 응답이 클라이언트로 다시 전송 되려면 ~ 1 초가 걸립니다.node.js에서 node.js 응답 버퍼링

질문 # 1 - 프록시 버퍼링이 없다면 모든 응답을 되돌리기 위해 node.js가 1000 초가 걸릴 것이라고 생각합니다. 그렇지 않습니다.

질문 # 2 - 어떻게 nginx 버퍼 (및 버퍼 일반적으로) 작동합니까? 내가 1000 개의 모든 응답을 버퍼에 수신 할 수 있습니까 (제공된 RAM은 문제가 아닙니다). 그런 다음에 만 클라이언트를 플러시 할 수 있습니까? proxy_buffers의 한계는 무엇입니까? 각각 1000 개의 1K 버퍼를 설정할 수 있습니까?

목표는 최대한 빨리 node.js에서 모든 응답을 플러시하여이를 차단하고 다른 시스템을 전달하지 않도록하기위한 것입니다.

감사합니다.

답변

2

물론 응답을 보내는 것은 비 차단 동작입니다. 노드는 단순히 네트워크 드라이버에 청크를 제공하여 다른 모든 작업을 해당 OS에 맡깁니다.

응답을 보내는 것이 차단 작업 일 경우 네트워크가 인위적으로 모든 노드 기반 서비스에 DoS로 장애가 발생한 단일 PC 만 사용하게됩니다.

+0

나는 네트워킹에 대해 너무 조금 알고 있습니다. 정말 고마워요! :) – sPaul