250x250
Notice
Recent Posts
Recent Comments
- Today
- Total
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- flutter
- https
- single quote
- TypeScript
- css
- Node.js
- TailwindCSS
- clipBehavior
- Express
- AWS
- wil
- async
- MYSQL
- await
- findByIdAndDelete
- til
- certbot
- RDS
- atlas
- double quote
- mongoose
- sequelize
- moment
- JavaScript
- jsonwebtoken
- nginx
- mongodb
- Nodejs
- Find
- EC2
Link
Archives
기억 휘발 방지소
node-schedule을 사용한 작업 스케줄링 본문
728x90
반응형
특정시간에 어떤 작업을 자동으로 해준다면 아주 편리할 것이다.
그럴 때 사용하면 좋은 것이 node-schedule 이다.
사실 node-schedule 말고도 node-cron이라는 것이 있는데 단순히 두 모듈을 비교해봤을 때 다운로드 수가 많은 것을 사용해보기로 했다.
다운로드 수가 많다는 것은 그만큼 사람들에게 인기가 많다는 것이고 도움을 받을 수 있는 자료들이 더 많을 가능성이 높다고 생각했기 때문이다.
아래는 NPM Trend에서 두 모듈의 다운로드 수를 비교한 것이다.
설치
npm i node-schedule
node-schedule을 사용하는 여러가지 방법들
1. cron 스타일
cron은 유닉스 계열 컴퓨터 운영체제에서 시간 기반 잡 스케줄러이다. 소프트웨어 환경을 설정하고 관리하는 사람들은 작업을 고정된 시간, 날짜, 간격에 주기적으로 실행할 수 있도록 스케줄링하게 위해 cron을 사용한다. (출처: 위키백과)
cron 스타일로 다음과 같이 작성한다. cron 표현식은 다른글에 정리했다.
매일 23시 59분 59초에 실행되는 스케줄러이다.
const schedule = require("node-schedule");
const job = schedule.scheduleJob("59 59 23 * * ?", () => {
console.log("Cron Scheduling!!");
});
2. Recurrence Rule 스타일
월~일 23시 55분 30초에 실행한다.
const schedule = require("node-schedule");
const rule = new schedule.RecurrenceRule();
rule.tz = "Asia/Seoul";
rule.dayOfWeek = [0, new schedule.Range(0, 6)];
rule.hour = 23;
rule.minute = 55;
rule.second = 30;
const job = schedule.scheduleJob(rule, () => {
console.log("Recurrence Rule Scheduling!!");
});
부족한 글 읽어주셔서 감사합니다!
728x90
반응형
'Web > Node.js' 카테고리의 다른 글
Express + Nginx (with 윈도우) (0) | 2022.04.27 |
---|---|
코드 포매터(Formatter)와 린터(Linter) (0) | 2022.03.14 |
Node.js와 AWS RDS 연동 with Express, Prisma (0) | 2022.02.09 |
[Node.js] moment.js로 날짜 표시하기 (0) | 2022.01.04 |
[Node.js] req.body, req.params, req.query에 대하여 with Express, Axios (0) | 2021.10.30 |