아카이브사이트맵
© 2026 Rayon. All rights reserved.
DevDay
아티클랭킹스페이스채용
우아한형제들 favicon우아한형제들

도메인 분리를 통해 백엔드 시스템의 안정성을 확보하세요!

by DD
2025-05-29
1년 전
조회수 4

모놀리식 구조의 WMS 시스템에서 재고 도메인 분리를 진행함

헥사고널 아키텍처를 도입하여 모듈 간 결합도 감소 및 유연성 확보

피처 플래그 활용, 테스트 코드 작성 등을 통해 안정적인 배포 환경 구축

헥사고널 아키텍처 도입 배경

기존 모놀리식 구조는 도메인 간 강한 결합으로 인해 변경에 취약했다. 따라서 Port-Adapter 패턴을 적용하여 모듈 간 의존성 최소화를 목표로 했다. 구체적으로, 인터페이스(Port)를 통해 모듈 간 통신하고, 실제 구현은 각 도메인 내부에 두어 유연성을 확보했다.

안정적인 배포를 위한 노력

231개 API 변경에 따른 배포 리스크를 줄이기 위해 다양한 전략을 사용했다. 피처 플래그를 활용하여 점진적 배포를 진행하고, 테스트 코드 작성을 통해 사전 검증을 강화했다. 따라서 롤백 없는 배포와 문제 발생 시 빠른 대응이 가능했다.

도메인 내부의 응집도 향상

재고 도메인 내부의 로직 분산 문제를 해결하기 위해 리팩토링을 진행했다. 코어 서비스에서 핵심 로직을 담당하고, 엔터티 외부 반환 금지 규칙을 적용했다. 결과적으로 코드 응집도 향상과 책임 명확화를 달성하여, 유지보수성을 개선했다.

전체 서비스를 관통하는 도메인 모듈을 안전하게 분리하기
중급
아키텍처
Hexagonal Architecture
Java
Backend
원문 읽기
원문 읽기

댓글 0

첫 번째 댓글을 남겨보세요!

관련 추천 글

JFR(Java Flight Recording)으로 자바(Java) 성능 병목을 찾아내고 5배 향상시키다!

레딧 로고

Java 성능의 새 지평, Project Valhalla JDK 28에 상륙!

해커뉴스 로고

Ruby, Java, TypeScript, 어떤 언어가 승자일까?

레딧 로고

자바(Java)의 지역 변수 선언, 패턴 매칭으로 더욱 강력해진다!

레딧 로고

Java, Value Classes 도입으로 성능 개선 기대!

레딧 로고

Netflix, ArchUnit 기반 Nebula ArchRules로 대규모 Java 프로젝트 아키텍처 관리

넷플릭스 로고
우아한형제들 favicon우아한형제들
중급
아키텍처
Hexagonal Architecture
Java
Backend

관련 추천 글

JFR(Java Flight Recording)으로 자바(Java) 성능 병목을 찾아내고 5배 향상시키다!

레딧 로고

Java 성능의 새 지평, Project Valhalla JDK 28에 상륙!

해커뉴스 로고

Ruby, Java, TypeScript, 어떤 언어가 승자일까?

레딧 로고