
백엔드
일 평균 30억 건을 처리하는 결제 시스템의 DB를 Vitess로 교체하기 - 1. 솔루션 선정기
두줄요약
결제 시스템 DB를 Nbase-T에서 Vitess로 옮기기 위해 ShardingSphere와 TiDB, Vitess를 PoC로 비교했습니다. 성능과 비용의 균형, 운영 경험을 고려해 Vitess를 최종 선정했습니다.
핵심 내용
- 일 평균 30억 건을 처리하는 결제 시스템 DB를 Nbase-T에서 Vitess로 마이그레이션하기 전 솔루션 선정 과정 정리
- 샤딩 솔루션 Apache ShardingSphere, 분산형 SQL DB TiDB, Vitess를 성능·비용·가이드·운영 측면에서 PoC로 비교
- Vitess는 VTGate, VTTablet, VTAdmin, VTctld, VTorc, 토폴로지 서버로 구성되며 MySQL 클러스터 관리와 샤딩, HA를 제공
선택 이유
- ShardingSphere는 리밸런싱과 다중 컴포넌트 구현 부담이 커 추가 개발 비용이 높음
- TiDB는 운용 부담은 줄지만 동일 성능 기준 인프라 비용이 크게 증가
- Vitess는 성능과 비용의 균형이 가장 좋고, 검증된 대규모 운영 사례가 있는 점이 장점
성능/운영 포인트
- Vitess는 VTGate가 병목이 되기 쉬워 GC 설정과 VTGate 증설이 성능에 큰 영향
- 프라이머리 샤드 대비 VTGate를 최소 1:3 수준으로 두면 성능 발휘에 유리
- queryserver-config-transaction-cap 조정으로 트랜잭션 처리량 개선 가능