정산 시스템은 단순한 백엔드 서비스가 아니다.
이 시스템은 회사의 돈 흐름을 최종적으로 확정하는 영역이며,
모든 장애는 곧 재무 리스크로 직결된다.
많은 개발자가 “정산도 그냥 CRUD 아닌가?”라고 생각하지만
실무에서는 완전히 다른 문제를 마주하게 된다.
이 글에서는
- 정산 시스템에서 일반적으로 추천되는 기술 스택
- 최근 등장한 기술 트렌드
- 그리고 기술이 바뀌어도 변하지 않는 핵심 문제
를 실무 관점에서 정리한다.
📌 1. 정산 시스템에서 일반적으로 추천되는 기술 스택
정산 시스템은 속도보다 안정성과 정합성이 우선이다.
이 기준에서 자연스럽게 선택되는 스택이 있다.
1) Backend
- Java + Spring Boot
- Kotlin (선택적)
이유
- 트랜잭션 안정성
- 검증된 생태계
- 금융/결제 레퍼런스 풍부
👉 정산은 “빠르게 만드는 것”보다
👉 “절대 틀리지 않는 것”이 중요하다
2) Database
- PostgreSQL / Oracle
이유
- 강한 ACID 보장
- 복잡한 집계 쿼리 처리
- 정산 리포트 생성
👉 NoSQL은 보조 역할 (캐시, 로그)이지
👉 정산의 메인 저장소가 되기 어렵다
3) Batch / Scheduler
- Spring Batch
- Quartz
이유
- 정산은 실시간이 아니라 “확정 처리”
- T+1 / T+2 정산 구조
4) Messaging
- Kafka / RabbitMQ
이유
- 결제 → 정산 비동기 분리
- 이벤트 기반 처리
5) Infra
- Docker / Kubernetes
- AWS (RDS, SQS, ECS/EKS)
핵심
👉 고가용성 + 장애 복구
📌 2. 최근 등장한 기술 스택 (AI 시대 포함)
최근 정산 시스템에도 새로운 기술들이 붙고 있다.
1) AI / LLM
- 이상 거래 탐지
- 정산 데이터 분석
- 자동 리포트 생성
👉 하지만 핵심 로직에는 거의 영향 없음
2) 이벤트 기반 아키텍처
- Event Sourcing
- Outbox Pattern
👉 정산과 매우 궁합 좋음
👉 하지만 운영 난이도 상승
3) Observability
- Prometheus + Grafana
- ELK / OpenSearch
👉 “장애를 빨리 찾는 능력”이 핵심
4) 클라우드 네이티브
- 서버리스
- MSA
👉 확장성은 좋아지지만
👉 정합성 관리 난이도 증가
📌 3. 기술이 바뀌어도 변하지 않는 정산의 핵심 문제
여기부터가 진짜 핵심입니다.
기술보다 중요한 영역입니다.
1) 정합성 (Consistency)
정산 시스템의 본질은 이것 하나입니다.
“돈이 1원이라도 틀리면 장애다”
문제 상황
- 중복 정산
- 환불 누락
- 배치 실패
해결
- 트랜잭션 관리
- 멱등성 설계
- 상태 기반 모델링
2) 멱등성 (Idempotency)
왜 필요한가
- PG 재시도
- 네트워크 장애
- 사용자 중복 요청
핵심
같은 요청은 몇 번 와도 결과는 동일해야 한다
3) 시간 차 문제 (Eventual Consistency)
정산은 항상 지연된다.
- 결제 → 즉시
- 정산 → T+1
문제
- “이미 결제됐는데 왜 정산 안 됨?”
👉 사용자와 시스템 간 시간 차 발생
4) 부분 환불 / 복잡한 상태 관리
정산 시스템이 어려운 이유
- 부분 환불
- 다중 결제
- 쿠폰 / 포인트
👉 단순 CRUD로 해결 불가능
5) 재정산 (Reconciliation)
실무에서 반드시 발생
- PG 데이터 ≠ 내부 데이터
해결
- 재정산 배치
- 로그 기반 추적
6) 장애 복구
정산 시스템은 실패를 전제로 설계해야 한다.
필수 요소
- 재처리 가능 구조
- 이벤트 로그 보존
- 수동 정산 기능
📌 4. 결론
정산 시스템에서 기술은 중요하다.
하지만 더 중요한 것은 다음이다.
- 돈 흐름을 이해하는 것
- 상태를 관리하는 것
- 실패를 전제로 설계하는 것
AI가 발전하고 기술이 바뀌어도
이 본질은 변하지 않는다.
📌 한 줄 정리
정산 시스템은 기술 문제가 아니라 “신뢰를 만드는 시스템”이다
LIST
'Software > Maker(Spring & Python & node)' 카테고리의 다른 글
| Claude Opus 4.7, 4.6과 무엇이 달라졌나 — 실사용자 관점 마이그레이션 노트 (0) | 2026.04.23 |
|---|---|
| 정산 시스템 아키텍처 설계 경험 — 데이터 정합성과 장애 복구를 중심으로 (0) | 2026.04.22 |
| 결제와 정산은 왜 분리해야 하는가 – 실무에서 터지는 구조적 문제와 해결 (0) | 2026.04.22 |
| 에이전트가 나 대신 토론할 때 — ASAT에서 만난 파이프라인의 진짜 가치 (0) | 2026.04.22 |
| 반복 산출물 생성을 AI에 맡긴 기록 — 무엇을 넘길 수 있고 무엇은 넘길 수 없었나 (1) | 2026.04.22 |