Spring Modulith 2.1 GA 출시! 이벤트 처리 및 테스트 기능 강화

by DD
1일 전
조회수 0

Spring Modulith 2.1 GA 버전이 공식 출시되어 새로운 기능을 포함함

이벤트 외부화 아웃박스(Event Externalization Outbox) 기능에 Namastack 및 JobRunr 지원 추가

애플리케이션 모듈 테스트(Application Module Testing) 지원 강화 및 관측 가능성(Observability) 인프라 간소화

이벤트 외부화 아웃박스(Event Externalization Outbox) 지원 강화

이번 릴리스는 이벤트 외부화 아웃박스(Event Externalization Outbox) 패턴 구현을 위한 지원을 확장하는 데 중점을 둔다.

Namastack 및 JobRunr 통합: NamastackJobRunr 라이브러리를 활용하여 이벤트 외부화 아웃박스 기능을 구현할 수 있게 되었다.

데이터 일관성(Data Consistency) 보장: 이 패턴은 데이터베이스 트랜잭션과 이벤트 발행을 원자적으로 처리하여, 데이터 변경과 이벤트 발행 간의 최종 일관성(Eventual Consistency)을 보장하는 데 도움을 준다.

내결함성(Fault Tolerance) 향상: 실패 시 재시도 메커니즘을 통해 이벤트 유실을 방지하고 시스템의 안정성(Stability)을 높이는 데 기여한다.

애플리케이션 모듈 테스트(Application Module Testing) 지원

Spring Modulith 2.1은 Spring Boot의 슬라이스 테스트(Slice Test) 지원과 결합하여 애플리케이션 모듈 테스트(Application Module Testing)를 용이하게 한다.

모듈 격리(Module Isolation): 각 모듈의 기능을 독립적으로 테스트할 수 있어, 테스트의 격리성(Test Isolation)과 속도(Speed)를 향상시킨다.

의존성 관리(Dependency Management): 슬라이스 테스트를 통해 특정 모듈에 필요한 의존성만 로드하여 테스트 환경 설정의 복잡성을 줄인다.

개발 생산성(Developer Productivity) 증대: 모듈별 테스트 용이성은 버그 조기 발견코드 품질 유지에 기여한다.

이벤트 가시성(Event Visibility) 및 관측 가능성(Observability) 개선

이번 릴리스는 PublishedEventsScenario API를 개선하여 이벤트 흐름에 대한 가시성을 높였다.

크로스 스레드 이벤트(Cross-Thread Events) 기본 지원: 이제 기본적으로 모든 스레드에서 발생하는 이벤트를 확인할 수 있어, 분산 환경에서의 디버깅(Debugging in Distributed Environments)이 용이해진다.

관측 가능성 인프라(Observability Infrastructure) 간소화: 이벤트 발행 및 소비 관련 메트릭(Metrics)과 추적(Tracing)을 위한 인프라 설정이 간소화되어, 시스템 상태 모니터링(System Health Monitoring)이 효율적으로 이루어진다.

문제 해결 시간(Mean Time To Resolution, MTTR) 단축: 이벤트 흐름에 대한 명확한 이해는 문제의 근본 원인(Root Cause)을 신속하게 파악하는 데 도움을 준다.

Spring Modulith 2.1 GA, 2.0.7, and 1.4.12 released