batch 재실행 관련 질문
- 작성자 :
- 김*현
- 작성일 :
- 2020-10-23 16:54:29
- 조회수 :
- 3,001
- 구분 :
- 실행환경
- 진행상태 :
- 완료
Q
안녕하세요 배치 개발환경 관련 질문드립니다.
현재 EgovBatchRunner 를 이용하여 crontime을 지정하여 지정 시간에 배치가 돌아가게끔 구현 해둔 상태입니다.
추가로 웹 페이지에서 재실행 버튼을 통해 배치를 강제로 실행시키고자 합니다.
버튼에 ajax function을 달아 controller에서 배치 method를 호출하여 실행시키는 방식으로 구현했습니다.
배치 실행은 정상적으로 되나 ajax는 success 가 아닌 error 로 반환이 됩니다..
비동기 때문이라 생각하여 ajax를 강제 동기화 시켰지만 동일하였습니다.
배치가 재실행되는 동안 다른 작업을 못하도록 하고 batch method의 실행이 완료되는 시점을 기다렸다가 반환하는 방법은 없을까요?
아니면 다른 방법이 있을까요?
현재 EgovBatchRunner 를 이용하여 crontime을 지정하여 지정 시간에 배치가 돌아가게끔 구현 해둔 상태입니다.
추가로 웹 페이지에서 재실행 버튼을 통해 배치를 강제로 실행시키고자 합니다.
버튼에 ajax function을 달아 controller에서 배치 method를 호출하여 실행시키는 방식으로 구현했습니다.
배치 실행은 정상적으로 되나 ajax는 success 가 아닌 error 로 반환이 됩니다..
비동기 때문이라 생각하여 ajax를 강제 동기화 시켰지만 동일하였습니다.
배치가 재실행되는 동안 다른 작업을 못하도록 하고 batch method의 실행이 완료되는 시점을 기다렸다가 반환하는 방법은 없을까요?
아니면 다른 방법이 있을까요?
A
안녕하세요.
표준프레임워크센터입니다.
배치의 실행상태를 확인하는 방법에 대해 문의를 주신듯 합니다.
배치의 실행상태는 job repository를 확인하시면 가능합니다.
배치의 job-repository를 db로 설정을 하신후 배치를 실행해보시면 배치와 관련된 여러테이블(BATCH_ 시작하는 테이블들)에
job과 step의 실행상태와 실행결과등의 메타데이터가 기록됩니다.
이 데이터들을 기반으로 모니터링 또는 관리프로그램을 개발하실 수 있습니다.
job-repository에 대해서 한번 알아보시기 바랍니다.
job-repository에 관한 내용은 아래의 저희 센터 위키가이드를 참조하실 수 있습니다.
https://www.egovframe.go.kr/wiki/doku.php?id=egovframework:rte2:brte:batch_core:job_repository
감사합니다.
표준프레임워크센터입니다.
배치의 실행상태를 확인하는 방법에 대해 문의를 주신듯 합니다.
배치의 실행상태는 job repository를 확인하시면 가능합니다.
배치의 job-repository를 db로 설정을 하신후 배치를 실행해보시면 배치와 관련된 여러테이블(BATCH_ 시작하는 테이블들)에
job과 step의 실행상태와 실행결과등의 메타데이터가 기록됩니다.
이 데이터들을 기반으로 모니터링 또는 관리프로그램을 개발하실 수 있습니다.
job-repository에 대해서 한번 알아보시기 바랍니다.
job-repository에 관한 내용은 아래의 저희 센터 위키가이드를 참조하실 수 있습니다.
https://www.egovframe.go.kr/wiki/doku.php?id=egovframework:rte2:brte:batch_core:job_repository
감사합니다.