node서버 배치 스케줄러 작업처리 하는 방법
1) 작업설명
Node.js 서버에서 주기적인 시간에 특정 작업을 자동으로 실행하고 싶을 때가 있습니다.
예를 들어, 자정에 메일을 발송하거나 특정 쿼리를 실행하는 경우입니다. 이러한 작업은 cron 라이브러리를 이용하여 쉽게 처리할 수 있습니다.
이번 글에서는 cron 라이브러리를 사용하여 주기적인 작업을 설정하는 방법을 설명하겠습니다.
2) 패키지설치
먼저 cron 패키지를 설치해야 합니다. 터미널에서 아래 명령어를 실행하여 패키지를 설치해 주세요:
npm install node-cron
설치가 완료되면, 코드에서 cron 패키지를 불러와야 합니다.
const cron = require('node-cron');
3) 소스적용
이제 주기적인 작업을 설정하는 코드를 작성해 보겠습니다.
예를 들어, 자정마다 특정 API를 호출하여 작업을 실행하고 싶다면 아래와 같이 설정할 수 있습니다
아래 코드에서 cron.schedule 메서드를 사용하여 주기적인 작업을 설정합니다.
0 0 * * *는 매일 자정에 작업이 실행되도록 하는 cron 표현식입니다.
이 표현식을 사용하면 매일 자정에 설정된 API를 호출하게 됩니다.

저는 영어 단어 공부를 위한 웹페이지를 운영하고 있는데, 자정마다 단어 목록이 갱신되도록 설정했습니다. 위 코드는 자정마다 단어를 갱신하는 API를 호출하는 예제입니다.
이 코드를 적용하면 자정마다 https://dailystudy.netlify.app/api/refreshWords API를 호출하여 단어 목록이 갱신됩니다.

4) 결과확인

적용 후 자정이 될 때마다 단어 목록이 갱신되는지 확인할 수 있습니다.
예를 들어, 제가 만든 영어 단어 공부 웹페이지에서는 자정마다 단어 목록이 갱신되어 매일 새로운 단어를 공부할 수 있습니다.
위 페이지에서는 자정마다 새로운 단어들이 조회되며, 사용자들은 매일 다른 단어를 공부할 수 있습니다.
심심할 때 오셔서 단어 퀴즈도 풀고 매일 30개씩 단어를 외워보세요!
node-cron 라이브러리를 사용하여 Node.js 서버에서 주기적인 작업을 설정하는 방법을 설명드렸습니다.
이를 통해 특정 시간에 자동으로 작업을 실행할 수 있어 서버 관리 및 데이터 갱신 작업을 효율적으로 처리할 수 있습니다.
업무나 개인 프로젝트에서 유용하게 사용하시길 바랍니다.
궁금하신 점이 있다면 언제든지 댓글 남겨주세요.
읽어주셔서 감사합니다. 😊