통합구현 #14 - 스케쥴러

김형우·2022년 3월 18일
0

mongoose + vue.js

목록 보기
15/15

특정 시간에 데이터 정리 등의 특정 명령을 수행하는 모듈

0. 라이브러리 설정

  1. 설치
    : CDM> npm i node-cron --save
  2. routes/cron.js 생성
  3. app.js에 cron.js 등록
  4. 사용

1. routes/cron.js

  1. node-cron 불러와서 객체 생성
    : var cron = require('node-cron');

  2. DB에 연동할 모델 불러오기
    : var Book1 = require('../models/book1');

  3. node-cron 사용
    : 10초 간격으로 명령 수행
    : 자료저장, 자료이동 등에 사용 (백업 등)

  4. 10초마다 '10초마다등록' 이라는 제목의 책을 book10에 자동으로 등록함

cron.schedule('*/10 * * * * *', async () => {
    console.log('aaa');
    var book = new Book1();
    book.title = '10초마다등록'
    await book.save();
})

전체코드

var express = require('express');
var router = express.Router();

// npm i node-cron --save
var cron = require('node-cron');

// DB연동 모델
var Book1 = require('../models/book1');

// 10초 간격으로 자료저장, 자료이동(백업 등)
cron.schedule('*/10 * * * * *', async () => {
    console.log('aaa');
    var book = new Book1();
    book.title = '10초마다등록'
    await book.save();
})

module.exports = router;

2. app.js

  1. node-cron 사용 설정
  2. 웹에서 사용 할 용도가 아님
    : url이 필요없음
  3. rest api가 아님
  4. 불러오기만 하면 됨
    : require('./routes/cron');
profile
The best

0개의 댓글