programing

node.js에 대한 작업 스케줄러 라이브러리가 있습니까?

iphone6s 2023. 8. 20. 10:32
반응형

node.js에 대한 작업 스케줄러 라이브러리가 있습니까?

특정 시간(예를 들어 x시간 이후가 아닌 15:30)에 실행할 기능을 예약할 수 있는 cron과 같은 라이브러리가 있습니까?이런 종류의 라이브러리가 없다면 어떻게 구현해야 합니까?콜백을 매초마다 호출하도록 설정하고 시간을 확인한 후 해당 시간에 예약된 작업을 시작해야 합니까?

노드-크론은 제가 설명한 대로 합니다.

node-schedule 노드에 대한 크론 유사 작업 스케줄러 및 크론 유사 작업 스케줄러.

의제는 노드에 대한 경량 작업 스케줄링입니다.이게 도움이 될 겁니다.

later.js는 꽤 좋은 자바스크립트 "스케줄러" 라이브러리입니다.Node.js 또는 웹 브라우저에서 실행할 수 있습니다.

저는 queue: https://github.com/learnboost/kue 를 사용하고 있습니다.그것은 꽤 좋습니다.

공식 기능 및 제 의견:

  1. 지연된 일자리
    • 특정 시간에 작업이 실행되도록 하려면 해당 시간과 지금 사이의 시간(밀리초)을 계산합니다.콜 잡.delay(밀리초) (의사가 분이라고 하는데, 이는 잘못된 것입니다.)작업을 시작할 때 "jobs.promote();"를 추가하는 것을 잊지 마십시오.
  2. 작업 이벤트 및 진행률 pubsub.
    • 이해가 안 돼요.
  3. 풍부한 통합 UI.
    • 매우 유용합니다.통합 UI에서 작업 상태(완료, 실행, 지연)를 확인할 수 있으며 코드를 작성할 필요가 없습니다.그리고 UI에서 오래된 레코드를 삭제할 수 있습니다.
  4. 무한 스크롤
    • 가끔은 작동하지 않습니다.새로 고쳐야 합니다.
  5. UI 진행률 표시
    • 시간이 많이 걸리는 작업에 적합합니다.
  6. 작업별 로그
    • 지연된 작업이므로 작업에 유용한 정보를 기록하고 나중에 UI를 통해 확인해야 합니다.
  7. 레디스의 힘으로
    • 매우 유용합니다.node.js 앱을 다시 시작하면 모든 작업 레코드가 그대로 유지되고 예약된 작업도 실행됩니다!
  8. 선택적 재시도
    • 좋네요.
  9. 전체 텍스트 검색 기능
    • 좋아요.
  10. RESTFul JSON API
    • 좋아요, 하지만 저는 그것을 절대 사용하지 않아요.

편집:

  1. queue는 cron과 같은 라이브러리가 아닙니다.
  2. 기본적으로 큐는 반복적으로 실행되는 작업(예: 매주 일요일)을 지원하지 않습니다.

timexe를 사용할 수 있습니다.

사용하기 쉽고, 가볍고, 의존성이 없으며, cron에 비해 구문이 개선되었으며, 해상도는 밀리초 단위이며 브라우저에서 작동합니다.

설치:

npm install timexe

사용:

var timexe = require('timexe');
var res = timexe("* * * 15 30", function(){ console.log("It's now 3:30 pm"); });

(저는 저자입니다)

node-crontab을 사용하면 node.js에서 시스템 cron 작업을 편집할 수 있습니다.이 라이브러리를 사용하면 기본 프로세스가 종료된 후에도 프로그램을 실행할 수 있습니다.고지 사항:제가 개발자입니다.

저는 node-runnr의 저자입니다.그것은 일자리를 만드는 매우 간단한 접근법을 가지고 있습니다.또한 시간과 간격을 매우 쉽고 명확하게 선언할 수 있습니다.예를 들어 10분 20초마다 작업을 실행하려면

Runnr.addIntervalJob('10:20', function(){...}, 'myjob')

매일 오전 10시와 오후 3시에 일을 하기 위해서,

Runnr.addDailyJob(['10:0:0', '15:0:0'], function(){...}, 'myjob')

그렇게 간단합니다.자세한 내용은 https://github.com/Saquib764/node-runnr 에서 확인할 수 있습니다.

이 모든 대답들과 아무도 가장 인기 있는 NPM 패키지를 가리키지 않았습니다 ..cron.

https://www.npmjs.com/package/cron

노드 일정 및 노드 크론 기반 스케줄러를 구현하는 데 사용할 수 있습니다.

참고: cron 식을 생성하기 위해 이 cron_maker를 사용할 수 있습니다.

모든 사용자에게 적합하지는 않지만 소켓을 통해 명령을 받도록 응용 프로그램이 이미 설정되어 있는 경우 netcat을 사용하여 cron property를 통해 명령을 실행할 수 있습니다.

echo 'mycommand' | nc -U /tmp/myapp.sock

언급URL : https://stackoverflow.com/questions/3785736/is-there-a-job-scheduler-library-for-node-js

반응형