아카이브사이트맵
© 2026 Rayon. All rights reserved.
DevDay
아티클랭킹스페이스채용
펫프렌즈 favicon펫프렌즈

레거시 추천 시스템, 서킷 브레이커와 E2E 테스트로 환골탈태!

by DD
2025-05-20
1년 전
조회수 14

서킷 브레이커 도입으로 외부 서비스 장애 시 메인 화면 안정성 확보

전략 패턴과 Enum 기반 스펙 관리로 확장성 및 유지보수성 향상

E2E 테스트를 통해 168가지 케이스 검증, 배포 안정성 확보

서킷 브레이커를 활용한 시스템 안정성 확보

전시 도메인 서버에 서킷 브레이커를 적용하여 외부 서비스 장애 시 fallback 데이터를 제공한다. 따라서 메인 화면까지 장애가 전파되는 것을 막아 시스템 안정성을 크게 향상시켰다. 구체적으로, Resilience4j를 사용하여 구현했다.

전략 패턴 기반의 유연한 추천 로직 설계

기존 DB 기반 스펙 관리에서 전략 패턴과 Enum을 활용한 구조로 전환했다. 추천 타입별 전략 클래스를 통해 새로운 로직 추가 시 코드 변경 최소화를 달성했다. 결과적으로 확장성과 유지보수성을 동시에 확보하여, 운영 효율성을 높였다.

E2E 테스트를 통한 배포 리스크 최소화

부하 테스트 도구 k6를 활용하여 E2E 테스트를 구축했다. 168가지 케이스를 검증하여 신/구 구좌 간의 동일성을 확인했다. 따라서 배포 전 QA 단계에서 발생할 수 있는 문제점을 사전에 발견하고, 배포 안정성을 확보했다.

레거시 탈출! 추천 구좌 시스템 개선기
원문 읽기
원문 읽기
중급
아키텍처
Spring WebFlux
Resilience4j
WebClient
k6
Java
JavaScript
Backend

댓글 0

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

관련 추천 글

CircuitBreaker로 서비스 안정성 확보!

올리브영 로고

신입 개발자들의 좌충우돌 프로젝트 회고: React, Java, MySQL 기반 리뷰 서비스 개발 경험 공유!

올리브영 로고

AI 코딩 에이전트, 수학 앱 개발의 새 지평을 열다

해커뉴스 로고

인터페이스 설계: 명확한 신호 전달의 중요성

랍스타즈 로고

CodeQL 2.25.6, Swift 6.3.2 지원 및 C# 커버리지 확대

깃헙 로고

로컬 AI 코딩 환경 구축: 클라우드 없이 개발 생산성 UP!

데브투 로고
펫프렌즈 favicon펫프렌즈
중급
아키텍처
Spring WebFlux
Resilience4j
WebClient
k6
Java
JavaScript
Backend

관련 추천 글

CircuitBreaker로 서비스 안정성 확보!

올리브영 로고

신입 개발자들의 좌충우돌 프로젝트 회고: React, Java, MySQL 기반 리뷰 서비스 개발 경험 공유!

올리브영 로고

AI 코딩 에이전트, 수학 앱 개발의 새 지평을 열다

해커뉴스 로고