동적 로딩 실험

1991 단어 devjournaljavascript
최근에 개발 경험을 많이 향상시키기 위해 서버 코드 내에서 핫 리로드하는 방법에 대해 생각해 왔습니다. 나에게별로 매력적이지 않은 한 가지는 webpack 및 HMR 구현과 같은 것을 사용하는 것입니다. 주로 데이터베이스 재 연결 등과 같은 작업을 처리 할 때 까다로운 구현 세부 사항이 많기 때문입니다.

다른 날에 내가 가진 한 가지 아이디어는 다시 로드를 처리하기 위해 노드 내에서 Worker를 사용하여 간단히 시도하는 것이었습니다. 작업자는 자체 통역사에서 실행되므로 작업해야 합니다!

다음은 Worker를 사용하는 것이 동적 로딩에 적합하다는 사실을 확인하기 위해 작성한 빠른 테스트입니다.

// index.js
const { Worker } = require("node:worker_threads");

const t = setInterval(() => {
  new Worker("./worker.js");
}, 1000);



// worker.js
console.log("WORKER", "1", new Date());


실행node index.js으로 인해 프로세스가 시작되고 매초 새 작업자가 생성됩니다. 실제로 worker.js 파일을 편집하면 다음에 파일을 실행할 때 업데이트가 표시됩니다.

요청이 있을 때마다 작업자에 로드하고 최신 코드 사본으로 요청을 처리하는 HTTP 서버를 구축하는 것이 가능해야 합니다.

좋은 웹페이지 즐겨찾기