SpringBoot 3

저의 첫 온라인 강의, 모든 파트가 오픈되었습니다.

안녕하세요.저의 첫 온라인 강의가 이제 마지막 파트까지 모두 오픈되었습니다.새로운 개념이나 기능을 프로젝트에 적용할 때마다 이해를 돕기 위한 예제를 만들면서 진행하였고, 이 과정에서 10여 개의 예제를 만들었습니다. 1개의 모놀리스 프로젝트로 시작한 채팅 시스템을 기능별로 스케일 아웃할 수 있도록 4개 역할(Authentication, Connection, Message, Push)로 분리하는 과정을 진행했습니다.강의 마지막에는 로컬 환경에서 22개의 컨테이너와 8개의 서버 인스턴스로 채팅 시스템을 구성했습니다. 강의 파트 5에서 완성된 프로젝트는 약 12,000 라인의 코드를 가지면서 다양한 인프라스트럭처(Consul, Nginx, MySQL, Redis, Kafka)를 연동하는 단일 강의 예제 프로젝..

I'm prostars 2025.07.01

저의 첫 온라인 강의가 론칭되었습니다.

안녕하세요.2025년 새해도 벌써 한 달이 지나가고 있네요.한동안 포스팅이 뜸했지만, 현재 작업 중인 자바 백엔드 개발 온라인 강의가 론칭되었습니다.페이지가 공식적으로 오픈되고 나니 막연한 부담감도 있지만, 더욱 집중해서 잘 만들어보겠습니다.이번에는 간단히 강의 소개 링크만 공유하고, 이후에는 강의 예제 중에서 하나씩 선정하여 포스팅하며 다시 소개해 보겠습니다.새해 복 많이 받으세요.

I'm prostars 2025.01.24

Partitioner와 Multi Thread를 활용한 Spring Batch 성능 개선

8비트 MSX로 컴퓨터를 배웠으나 나의 첫 컴퓨터는 IBM XT였고, 꽤 오랜 기간 DOS를 사용했다. 그래서인지 아직도 배치하면 AUTOEXEC.BAT가 같이 생각난다. 이번에 정리할 내용은 많이 사용하는 스프링 배치의 성능 개선에 대한 것이다. 배경백엔드 서비스를 운영하는 개발팀은 이미 다양한 배치를 운영하고 있을 것이고, 스프링 배치로 구현되었을 확률이 높다. 많은 배치는 서비스 사용량이 적은 새벽에 실행되고, 서비스가 작을 때는 성능에 민감하지 않아도 괜찮다. 하지만, 서비스가 커지고 배치가 처리해야 하는 데이터의 양이 증가하면서 배치의 실행 시간도 같이 증가할 것이다. 예를 들어 매일 새벽 3시에 시작하는 배치의 실행 시간이 점진적으로 증가하여 9시까지 실행되고 있다면 문제가 될 수 있고, 1시..

Dev 2024.05.21
반응형