[부조금 간편 관리를 위한 신규 서비스, ‘모두의 부조(가칭)’ PoC 검증]
[기술스택]
Python, Django Rest Framework, Postgres, Redis, Celery, Pytest, K6, Docker, Docker-compose, Sentry, Naver Cloud Platform
[주요 성과 및 문제 해결]
1. 디자인 패턴 활용
- 예식장 B2B 고객의 비즈니스 요구사항을 반영하여 쉽고 빠르게 기능을 확장하고, 검증하기 위해 유연하고 재사용성 높은 코드 구조를 고민하였습니다. 또한 로깅 및 Sentry 모니터링을 통해 문제 발생 시 실시간으로 오류를 감지, 대응할 수 있도록 하였습니다.
- CQRS 패턴 : 읽기와 쓰기 작업을 분리하여 독립적인 성능 최적화 및 테스트 수행
- 저장소 패턴 : DI 컨테이너 구현과 django-injector를 통한 의존성 주입으로 데이터 접근 로직과 도메인 로직을 분리
- 데코레이터 패턴 : 함수형 데코레이터 구현을 통해 커스텀 예외처리 및 로깅, Sentry 모니터링 수행
2. 프로파일링 및 성능 최적화
- Silk 프로파일링, K6 부하테스트 도구를 활용하여 [ 성능 측정 → 코드 리펙터링 ] 사이클을 반복하여 API 응답속도를 88% 개선하고, 쿼리 실행 수를 40% 감소시켰습니다.
- 읽기 성능 : 페이지네이션, 인덱싱, 글로벌 캐싱을 적용하여 조회 성능을 528 ms → 60 ms 로 개선
- 쓰기 성능 : Celery Worker를 확장하여 기존 대비 초당 n개의 요청 처리 지표를 측정 → 응답 시간 및 처리량 개선 수행
- 이벤트 소싱 : 상태 변경을 이벤트 로그로 기록하고 비동기로 처리 → CQRS의 단점(시스템 복잡성과 데이터 일관성 유지비용) 보완
더보기