배치를 처리할 수 있는 방법은 크게 2가지로 나뉩니다. Tasklet로는 단순하게 처리할 수 있는 장점이 있으나, 대 용량을 감당하기엔 부하를 감당할 수 없습니다. 따라서 Chunk를 통해 쪼개서 넣을 필요가 있는데, Tasklet로도 쪼개서 넣을 수 있지만, 가독성에서 떨어지기 때문에 권장하지 않습니다. 현재 사용하고 있는 실무에서도 대용량은 Chunk를 적극 사용하고 있다. 그렇다면 Tasklet 방식과 Chunk 방식에 대해 알아보자. ● Tasklet을 사용한 Task 기반 처리 배치 처리 과정이 비교적 쉬운 경우 쉽게 사용 대량 처리를 하는 경우 더 복잡 하나의 큰 덩어리를 여러 덩어리로 나누어 처리하기 부적합 ● Chunk를 사용한 chunk(덩어리) 기반 처리 ItemReader, ItemP..
최근에 개발자의 편의성이 스프링 부트의 탄생에 따라 많이 좋아졌다. 이전에는 제공하지 않았던 배치를 스프링 부트에서 제공하기 때문이다. 이번 글에서는 배치에서 사용하고 있는 것 중 스케줄링을 할 수 있는 Cron 표현식에 대해서 작성해보려고 한다. Cron 표현식의 유래는 유닉스 계열의 잡 스케줄러에서부터 자주 사용하였다. 스프링 부트도 이와 마찬가지 방식을 채용하여 문자열 방식으로 서술하여 표현이 가능하다. 가장 기본적인 어노테이션은 @Scheduled으로 시작하는 것이다. @Scheduled(cron = "0 0/5 * * * ?") // 5분마다 작동하는 배치 기본적인 포맷은 위와 같이 7개의 필드로 구성되어 있다. 앞에서부터 '초/분/시/일/월/요일/연도'의 순서이며 자세한 설명은 아래와 같다. ..