[카카오페이] 사내 공통 목서버로 카카오페이 테스트 진입 장벽 낮추기
작성자 정보
- QARobot 작성
- 작성일
컨텐츠 정보
- 743 조회
본문
[기술포스팅 원문] https://tech.kakaopay.com/post/how-to-simplify-kakaopay-testing-using-a-common-mock-server/
[기술포스팅 요약]
카카오페이 SRE팀 RE파트에서 사내 공통 목서버를 개발하고 제공한 경험을 공유합니다. 공통 목서버는 마이크로서비스 아키텍처 기반 대규모 플랫폼의 효율적인 테스트 환경 구축을 위해 개발되었습니다.
- 목 서버(Mock Server): 실제 서비스를 모방하여 미리 정의된 응답을 제공하는 가상의 서버로, 독립적인 테스트 환경 구축에 도움을 줍니다.
- 개발자 인터뷰: 개발자들이 현재 테스트 환경에서 겪는 불편함을 해결하기 위해 독립적인 테스트 환경 제공, 외부 서비스 의존성 최소화, 전체 플로우 테스트 가능, 사용자 맞춤형 개발 지원을 목표로 설정했습니다.
공통 목서버 소개
- MockServer 오픈소스 선택: 안정성, 기능성, 확장성의 이유로 선택되었습니다.
- 추가 기능 개발: 사용자 친화적인 UI, 모니터링 기능, 백업 및 복구 정책 등
아키텍처
- 웹 서버, API 서버, 데이터베이스(MySQL), ELK, 목서버, 백업 이벤트로 구성
- 공용 목서버와 성능 테스트용 목서버를 분리 운영하여 서비스 안정성 유지 및 성능 테스트의 영향을 최소화
- 모니터링은 프로메테우스와 그라파나를 사용하여 임계값 초과 시 자동 복구 및 알림
기능소개
- 홈 화면: 조직 수와 생성된 서비스 수를 한눈에 확인
- API 관리: API를 쉽게 추가, 편집, 삭제할 수 있는 기능 제공
- 친숙한 UI/UX: Postman과 유사한 UI로 설계되어 사용이 용이
- 성능 테스트 지원: 최대 6,800 RPS(Requests per second)에서 7,000 RPS까지 지원
사용 사례
- 의존성 있는 서비스의 점검 시에도 개발 및 테스트 가능
- 프론트엔드 개발 지원
- 외부 서비스 의존성 해결을 통한 성능 테스트
- 내부 로직 최적화를 위한 성능 테스트
한계
- 특정 서비스에 대한 깊이 있는 지원의 한계
- 수기 입력에 따른 유지보수 부담
지속적인 개선 방안을 모색하며, 서비스별 커스터마이징 옵션 확대 및 API 자동 생성 및 동기화 기능 도입 검토 중
이번 글은 공통 목 서버를 도입하게 된 배경과 기능, 실제 사용 사례를 소개했습니다. 공통 목 서버는 개발 과정에서 마주치는 테스트 환경 구축의 어려움을 해결하기 위해 시작되었으며, 현재는 개발 프로세스 전반의 효율성을 높이는 중요한 역할을 하고 있습니다.
이 게시글은 [GPT-4 모델]를 통해 요약되었으며, 정보 공유 목적으로 게시되었습니다. 원문 게시물에 대한 책임이나 이해 관계가 없습니다. - 소프트웨어QA 포럼
관련자료
-
이전
-
다음
댓글 0개
등록된 댓글이 없습니다.