2014-11-06 3 views
0

내 localhost (내 macbook)에서 실행중인 NodeJS 서버에서 이상한 동작이 발생했습니다. 처음에는 인터넷에 Wi-Fi를 켠 다음 서버에 요청을 보냅니다. GET/jobHistory -> 정적 파일에 대한 모든 요청이 (morgan JS를 사용하여) 기록되며, 모든 정적 파일에 400ms.인터넷이 다운되면 NodeJS가 정적 파일을 더 빠르게 처리합니다.

wifi (인터넷이 꺼짐)를 끄고 NodeJS 서버를 다시 시작해야합니다 (그렇지 않으면 유휴 상태 일 것입니다 - 확실하지 않음). 다른 GET/jobHistory를 보냅니다. -> 이제 정적 파일에 대한 모든 요청은 파일 당 약 5ms-10ms 정도 소요됩니다. 이는 내가 관찰 한 것보다 훨씬 빠릅니다. 당신은 여기에 대한 단서가있는 경우

Screenshot

은 가르치 려, 아니면 추가로 조사 할 수있는 방법을 말해주십시오. ,, 파비콘

내 미들웨어가 정적 파일은 아래 쿠키의 미들웨어 이었다 봉사 : 이 나는 ​​문제가 무엇인지 파악

답변

0

... 내가 놓친 NodeJS 서버에 대한 몇 가지 중요한 포인트가 될 것 같다 쿠키 파서, 로거, 세션.

// Route to public static files (js, css) 
app.use(express.static(path.join(__dirname, '../public'))); 

그래서 명시 적 일부 미들웨어 기능을 실행하는 데 시간을 할애하고 나에게 파일을 제공하기 전에 (아마도 세션 정보에 대한 DB/캐시를 조회).

수정 사항은 다른 미들웨어보다 먼저 내 정적 파일 미들웨어 으로 옮겼습니다. 놀라운 결과입니다. 각 정적 파일은 5-7ms 내에 제공됩니다.