Qs

Qs

Spring Batch 리커버리 구조 설계 — JobExecution과 StepExecution의 관계

Spring Batch는 단순히 배치를 실행하는 프레임워크가 아니다.운영 환경에서는 배치가 실패하더라도,그 실패 상태를 정확히 기록하고 복구 가능한 형태로 남기는 것이 핵심이다. 그 중심에는 두 개의 개념이 있다.JobExecution 과 StepExecution. 이 둘의 관계를 정확히 이해해야만운영 배치를 제대로 복구하고,“재처리 가능한 시스템”을 설계할 수…

운영 배치 장애 대응 전략 — 재처리와 롤백 설계

운영 환경에서 배치 작업은“하루의 마지막 프로세스이자, 다음 날의 시작점”이다. 그만큼 안정성이 중요하다.하지만 시스템이 아무리 견고해도실패하지 않는 배치는 없다. 진짜 중요한 건 실패가 아니라,**“실패 이후 어떻게 복구할 것인가”**다. 1. 장애의 본질 — 데이터 정합성의 붕괴 배치 장애는 대부분 데이터 불일치에서 시작된다.…

로그는 진실을 말한다 — 운영 환경 디버깅의 기술

운영 서버에서 장애가 발생했을 때,가장 먼저 확인해야 할 건 코드가 아니라 로그(log) 다. 디버깅이란 결국“시스템이 지금 무슨 이야기를 하고 있는지”를 읽어내는 과정이다.문제는, 대부분의 개발자들이 그 이야기를너무 늦게 들으려 한다는 것이다. 1. 로그는 코드보다 먼저 읽어야 한다 장애가 났을 때 많은…

지치지 않기 위한 리듬, 개발자의 속도를 조절하는 법

개발자로 일한 지 몇 년이 지나면서나는 “잘하는 법”보다 “지치지 않는 법”을 더 많이 고민하게 됐다.좋아하는 일을 오래 하려면,결국 속도를 어떻게 조절하느냐가 핵심이 된다. 예전엔 ‘몰입’을 최우선으로 생각했다.밤새 코드를 짜고, 아침에 눈 뜨자마자 다시 IDE를 열었다.그런데 어느 순간, 집중의 질보다‘피로가 쌓이는…

나의 워크스페이스, 집중을 위한 최소한의 구조

작업 공간을 꾸민다는 건 단순한 인테리어가 아니다.그건 ‘내가 어떻게 일하고 싶은가’를 시각적으로 표현하는 일이다. 나는 복잡한 환경보다 단순한 구조에서 가장 잘 집중한다.그래서 내 책상엔 늘 세 가지만 남긴다.모니터, 키보드, 그리고 머그컵. 1. 모니터: 시선이 머무는 하나의 창 나는 듀얼 모니터를…