NodeJS Server에서 주기적으로 다른 WebServer에서 사진을 가져 와서 특정 폴더에 저장합니다.NodeJS - EMFILE 예외 - writeStream에 파이프로 연결 요청
임 (타이머가 10 초마다 폴링 기능)에이 명령을 이렇게 :
request(cameraRequestOptions).pipe(fs.createWriteStream("./campics/cam" + cameraId + "pic" + latestCameraPictureNumber + ".jpg"));
대상 이미지 파일의 이름은 "latestCameraPictureNumber"로 인해 변화된다.
EMFILE Exception에 문제가있는 경우 이상한 것은 서버가 실행되는 일부 Maschines에서만 발생하며 오랜 시간이 지나야 만 발생하는 것입니다.
내가 이미 알아 냈기 때문에, 이것은 너무 많은 FileStreams 또는 소켓을 여는 것을 의미 할 수 있습니다. 그래서 내 파이프에 뭔가 잘못된 일을하는 경우 확실하지 : WriteStream 또는 요청을 닫아야합니까? 그리고 언제?
문서는 말한다 :
readable.pipe (대상, [옵션]) #
대상 쓰기 가능한 스트림 데이터를 쓰는 대상
옵션은 파이프 옵션 객체
끝 Boolean 판독기가 끝날 때 작성기를 종료합니다. 기본값 = true
그래서 나는 그것이 자동으로 닫히 리라 생각했다.
도움 주셔서 감사합니다.
요청 및 파일 스트림에 이벤트 처리기를 추가하여 각각 끝나고 끝내는 지 확인 했습니까? 그들이 끝나거나 끝내고 있다면, 얼마나 걸리나요? – mscdex