본문/내용
1. 달성하기 어렵다고 생각하는 높은 목표에 도전해서 그것을 위해 새로운 방식을 시도하여 결과를 만들어낸 경험을 기술해주세요.
[레거시 시스템의 한계를 넘어, 무중단 마이그레이션으로 처리 성능 300% 향상]
대학 시절 학생 자치 기구의 복지 포인트 신청 시스템을 운영하며, 기존의 동기식 처리 방식이 가진 한계를 극복하기 위해 `메시지 큐 기반의 비동기 아키텍처`를 도입하여 성능을 개선한 경험이 있습니다. 당시 시스템은 신청자가 몰리는 특정 시간에 DB 락(Lock) 현상으로 인해 서버가 다운되는 고질적인 문제를 안고 있었습니다. 단순히 서버 사양을 높이는 방식으로는 예산 한계와 근본적인 부하 분산이 불가능하다고 판단했고, 저는 `신청 성공률 100% 보장과 응답 속도 1초 미만`이라는 도전적인 목표를 설정했습니다. 기존의 안정적인 운영을 유지하면서도 완전히 새로운 처리 구조를 도입해야 했기에 기술적 난도가 매우 높았습니다.
저는 새로운 방식을 시도하기 위해 Kafka와 Redis를 활용한 비동기 처리 파이프라인을 설계했습니다. 사용자의 요청을 즉시 DB에 기록하는 대신, Redis를 이용해 요청 순서를 제어하고 Kafka 메시지 큐에 적재하여 …