반응형

node.js로 만든 서비스를 정기적으로 실행시키기 위해 일반적으로 cron을 쓰던 뭘쓰던간에 서버에 node.js 스크립트를 설치해야 한다.
문제는 서버 특성상 1대가 아닌 다수의 서버인 경우 전산관리자는 친절하게 해당 서버를 일일이 로그인 처리 해주지 않는다란 사실이다.

따라서 비로그인 상태에서도 해당 스크립트가 동작되길 바란다면 윈도우의 작업 스케줄러에 등록하여 비로그인 상태에서도 윈도우가 부팅되면 자동 실행되도록 처리하는 추가 작업이 필요하다.

일단 당연히 트리거 탭에선 시작할 때로 선택해주고 동작탭에선 아래처럼 프로그램 시작을 선택해준다.

흔히 실수하는 두가지가 있는데 하나는 이렇게 윈도우 작업 스케줄러의 프로그램/스크립트 부분을 node가 아닌 cmd로 해버릴경우 당연히 아무런 동작을 하지 않는다.

프로그램/스크립트 부분엔 node(그럴일 없겠지만 만약 node의 path가 설정되지 않았다면 node의 전체경로로 등록하여야 함)
인수 추가(옵션) 부분엔 해당 node 스크립트가 존재하는 폴더의 .js까지 모두 적어주면 정상 동작한다.

한가지 긴가 민가 한부분이 존재하는데 작업스케줄러에서 스케줄러 등록시 작업 만들기가 아닌 기본 작업 만들기로 해야 정상 동작이 하는것 같다.(삽질을 해대서 확실치 않음)

 

끝으로 일반탭에선 작업등록자를 사용자 또는 그룹 변경을 눌러 로그인 작업자가 아닌 SYSTEM으로 등록시켜주길 바란다.

반응형
Posted by Hippalus
,