Heroku에서 작업 예약

2353 단어 heroku
Heroku Scheduler은 Linux 서버의 cron 작업과 유사하게 예약된 시간 간격으로 애플리케이션에서 실행할 수 있는 모든 명령을 실행하는 무료 Heroku 추가 기능입니다.

설치



추가 기능은 무료이지만 확인된 Heroku 계정에서 사용해야 합니다. 계정에 신용 카드를 추가하여 계정을 확인할 수 있습니다. Heroku CLI를 사용하여 설치하려면 애플리케이션 폴더에서 다음 명령을 실행합니다.

$ heroku addons:create scheduler:standard


추가 기능은 Heroku 애플리케이션 대시보드의 '리소스' 섹션에서도 설치할 수 있습니다. 'Heroku 스케줄러'를 검색하고 프롬프트에 따라 애드온을 설치하십시오.

용법



애드온이 설치되면 리소스 섹션에서 액세스할 수 있습니다. 나열된 애드온에서 'Heroku 스케줄러'를 클릭하면 첫 번째 작업을 생성할 수 있는 새 페이지로 이동합니다.



이 페이지는 CLI에서도 액세스할 수 있습니다.

$ heroku addons:open scheduler


'작업 만들기'를 클릭하면 측면에 양식이 열립니다.



오후 6시에 앱 사용자에게 매일 이메일을 보내는 emailUpdates.js라는 스크립트가 있다고 가정합니다. 스케줄러를 사용하여 이 스크립트를 실행할 수 있습니다.
  • 일정을 '매일 ...' 오후 6:00로 설정합니다(기본 시간대는 UTC이므로 원하는 시간으로 오프셋해야 합니다)
  • 명령을 node emailUpdates.js로 설정합니다. Heroku는 bin 폴더에 스크립트를 배치할 것을 제안하므로 스크립트가 해당 폴더에 있는 경우 명령은 node ./bin/emailUpdates.js 입니다.
  • 작업 저장을 클릭합니다
  • .

    실행할 작업은 애플리케이션에서 실행할 수 있는 모든 명령이 될 수 있습니다. node.js 앱에서 이것은 scripts 파일의 package.json 섹션에 정의된 스크립트일 수 있습니다.

    제한 사항



    예약된 작업은 단기 실행 작업을 실행하거나 장기 실행 작업을 백그라운드 작업 대기열에 넣기 위한 것입니다. 완료하는 데 몇 분 이상 걸리는 작업은 worker dyno을 사용하여 실행해야 합니다.

    스케줄러에 의해 시작된 dyno는 스케줄링 간격보다 오래 실행되지 않습니다. 예를 들어 10분마다 실행되는 작업의 경우 dynos는 약 10분 실행 후 종료됩니다.

    이것이 Heroku에서 간단한 작업을 예약하는 방법입니다. 자세한 내용은 공식 문서here를 참조하십시오.

    좋은 웹페이지 즐겨찾기