현재 문제점이
에서 3번 작업이 오래걸리기도하고 결과를 알필요는 없습니다.
3,4번은 서로 영향을 받지 않는 작업이죠
3,4번 순서를 바꾸면 되지 않느냐 라고 생각할 수도 있겠지만
한번호출때는 원하는 이득이 날 수 있으나
여러번 처리된다고 가정하면 처리속도는 계속 쌓이게됩니다.
그래서 방법없나 찾아보니 쓰레드 라는게 있군요
몇가지 제한이 있긴하지만 완전히 분리된 처리가 가능해보입니다.
쓰레드에서는 나름데로 최적화할 수 잇을것 같구요
쌓은 다음 일정 숫자가 모이면 한번에 쿼리한다거나 말이죠
================
자식 프로세스를 만드는 service 라는 것도 있고
쓰레드를 만드는 방법도 있군요
링크: https://wanago.io/2019/05/06/node-js-typescript-12-worker-threads/
시간 오래걸리는건 쓰레드로 던져버리면 되겠군요
로그나 파일 쓰기 같은거 말이죠
충격적이군요
const worker = new Worker('./worker.js', {
workerData: {
value: 15,
path: './worker.ts'
}
});
참고로 이런 예제코드에 new Worker 의 worker.js 라는 파일이 실행되는것이지
path: './worker.ts' 이건 아무것도 아닙니다.
typescript 로 돌리려면 빌드해서 js 로 돌리는 방법이 좋겠습니다.
require('ts-node').register();
require(path.resolve(__dirname, './worker.ts'));
js 에서 다시 ts 돌리는 방법도 있군요 테스트 해보면 후기를 남길 수 있겠군요
이것도 충격적이군요