* 배치 프로그램 구현
1) 대용량의 데이터를 일괄적으로 처리하는 배치프로그램 구현의 만족 조건
- 데용량 데이터
- 자동화 : 심각한 오류 상황 외에는 사용자 개입 없이 동작
- 견고함 : 유효하지 않은 데이터에 대해서도 비정상적인 실행 중단이 발생하면 안됨
- 신뢰성 : 묹의 원인이나 문제 발생 지점을 추적할 수 있어야 함
- 성능 : 주어진 시간 내에 처리를 완료해야 하고, 같은 시점 실행 중인 다른 어플리케이션을 방해하면 안됨
2) 위 조건을 만족하기 위해 배치 프로그램은 여러 기능을 공통적으로 포함
(비즈니스 로직, 데이터 입출력, 리소스 관리, 로깅, 리부팅, 건너뛰기 등)
- 공통 기능을 제공하는 프레임워크가 많이 등장, 스프링 배치가 대표적
- 스프링배치는 어플리케이션, 배치 코어, 배치 인프라 3개의 영역으로 구성
어플리케이션 : 비즈니스 로직을 처리하는 배 치 작업과 사용자 정의 코드
배치 코어 : 배치 작업을 실행하고 제어, 모니터링하는데 필요한 기능
배치 인프라 : 로깅이나 데이터 입출력 등과 같은 어플리케이션과 배치 코어에서 공통되게 사용하는 서비스 기능
* 배치 스케줄러
1) 배치 프로그램을 통한 일괄처리는 주기적으로 동작하거나 특정 이벤트 발생 시 반복적으로 수행
이런 배치 프로그램을 일정한 규칙에 따라 실행하도록 지원하는 것이 배치 스케줄러
- 윈도우 os 에서는 작업 스케줄러를 사용하여 배치 작업을 자동화 할 수 있음
- UNIX/LINUX 환경에서는 정해진 시간 또는 특정 시간마다 작업을 실행해주는 CRON을 스케줄러로 사용
- Quartz는 오픈소스 스케줄러로 스프링배치와 통합하여 많이 사용
기본 요소 : scheduler, job, jobDetail, Trigger
'정보처리기사 실기 > 02. 응용SW엔지니어링' 카테고리의 다른 글
[2020 정보처리기사 실기 - 화면 설계] 2. UI 설계하기 (0) | 2020.03.06 |
---|---|
[2020 정보처리기사 실기 - 화면설계] 1. UI요구사항 확인하기 (0) | 2020.03.06 |
[2020 정보처리기사 실기 - 서버 프로그램 구현] 3. 서버 프로그램 구현하기 (0) | 2020.03.05 |
[2020 정보처리기사 실기 - 서버 프로그램 구현] 2. 공통 모듈 구현하기 (0) | 2020.03.04 |
[2020 정보처리기사 실기 - 서버 프로그램 구현] 1. 개발환경 구축하기 (0) | 2020.03.04 |