전자정부 배치 멀티서버 사용시 배치 실행이 중복되지 않도록 하는 방법이 있나요?
- 작성자 :
- 배*
- 작성일 :
- 2019-09-26 11:23:42
- 조회수 :
- 2,537
- 구분 :
- 운영환경
- 진행상태 :
- 완료
Q
2대의 서버(A, B) 에 전자정부 배치 운영환경을 설치하고 배치를 올려서 정해진 시간마다 배치가 실행되도록 했습니다.
01:00 에 A, B 서버에서 동시에 같은 작업이 실행됩니다. --- 외부 API에서 데이터를 읽어서 DB에 저장을 하는데 동시에 A에서는 성공, B에서는 실패 또는 반대로 B에서 성공, A에서 실패가 됩니다. INSERT시 DB에 중복저장을 시도하기 때문에 중복오류가 발생되는데요.
배치운영환경에서
여러대의 서버에서 동일한 작업을 실행할때 먼저 시작된 JOB이 있으면 다른 서버에서는 실행이 되지 않도록 하는 방법이 있는지 궁금합니다.
01:00 에 A, B 서버에서 동시에 같은 작업이 실행됩니다. --- 외부 API에서 데이터를 읽어서 DB에 저장을 하는데 동시에 A에서는 성공, B에서는 실패 또는 반대로 B에서 성공, A에서 실패가 됩니다. INSERT시 DB에 중복저장을 시도하기 때문에 중복오류가 발생되는데요.
배치운영환경에서
여러대의 서버에서 동일한 작업을 실행할때 먼저 시작된 JOB이 있으면 다른 서버에서는 실행이 되지 않도록 하는 방법이 있는지 궁금합니다.
A
안녕하세요.
표준프레임워크센터입니다.
배치의 구동 주체가 2개 이상으로 이중화 되어 있고
Active - Active 상태인경우는
서비스간에 경쟁이 발생하기 때문에 충돌을 피할수 없을듯 합니다.
2중화라고 해도
반드시 Active - Active 상태일 필요가 없다면
Active - StandBy로 변경하실수 있지 않을까 합니다.
이를 WAS에서 한쪽은 서비스 구동전 대기 상태로
설정하는게 가장 손쉬울듯 합니다.
프레임워크에서 처리하거나
설정을 변경하는 방법은 가이드해 드리는 사항은 없습니다.
감사합니다.
표준프레임워크센터입니다.
배치의 구동 주체가 2개 이상으로 이중화 되어 있고
Active - Active 상태인경우는
서비스간에 경쟁이 발생하기 때문에 충돌을 피할수 없을듯 합니다.
2중화라고 해도
반드시 Active - Active 상태일 필요가 없다면
Active - StandBy로 변경하실수 있지 않을까 합니다.
이를 WAS에서 한쪽은 서비스 구동전 대기 상태로
설정하는게 가장 손쉬울듯 합니다.
프레임워크에서 처리하거나
설정을 변경하는 방법은 가이드해 드리는 사항은 없습니다.
감사합니다.