내가 원하는 시간대에 이벤트 발생시키기 (node-schedule)

동동·2023년 8월 23일
0

TIL

목록 보기
3/13
post-thumbnail

node-schedule를 사용하게 된 이유


내가 원하는 시간대에 내가 짜둔 로직을 실행시킬 수 있다 !
2차 프로젝트에서 추가 기능으로 매 시간대마다 이벤트를 발생시켜야 했기에 node-schedule을 사용하였습니다.

2차 프로젝트 간략한 내용

  • 누구든지 내가 원하는 사람과 밥을 같이 먹을 수 있는 방을 열 수 있고 참가할 수 있습니다 !
  • 방에 대해선 예약 날짜와 시간 , 결제 여부 등이 있습니다.

node-schedule을 사용하여 ( 예약 시간 1시간 후 + 결제가 완료된 상태 )인 방에 대해 리뷰 작성을 부탁드린다는 알림을 보내도록 구현하였습니다 !

node-schedule에 대해서


node-schedule 이란 ?

내가 짜둔 로직내가 원하는 시간대스케줄링(예약?)해둘 수 있는 node 모듈

node-schedule 시간대 설정

Cron 표현식 (관련 자료 링크)

schedule.scheduleJob('0 1 * * * *', () => {
  console.log('Hello, Cat! 🐈');
});

Date로 시간대 설정

const date = new Date(2050, 12, 25, 0, 0, 0);

const job = schedule.scheduleJob(date, () => {
  console.log('Happy X-mas, Cat! 🐈');
});

RecurrenceRule() 로 시간대 설정

const rule = new schedule.RecurrenceRule();
rule.minute = 1;
rule.tz = 'Asia/Seoul'

const job = schedule.scheduleJob(rule, () => {
  console.log('Hello, Cat! 🐈');
});

node-schedule을 사용하며 느낀 점🙏


node-schedule 라는 모듈을 보며 특정 시간대에 특정 로직을 구현할 수 있다는 것에 호기심이 되게 많이 생겨 추가 기능에 대해 이쪽으로 의견을 내고 결국 진행하게 되었는데, 후회없이 잘한 것 같다.

시간대와 그 시간대에 실행될 함수를 잘만 생각하면 어떤 부분을 자동화까지 가능하지 않을까 싶기도 하다.

  • TMI
    매일 1시간마다 특정 조건에서 실제 알림이 DB에 저장되는 지 보려고 30분동안 기도했다.

    지금 생각해보면 그냥 1분마다로 바꿔서 했어도 됐었네... 🥲

    ( 실력 20 + 구글링 50 + 기도 30 ) = " 나 "

profile
✍️ 끄적끄적

0개의 댓글

관련 채용 정보