diff --git a/docs/architecture/transaction-sequence.md b/docs/architecture/transaction-sequence.md new file mode 100644 index 0000000..f4ceb5c --- /dev/null +++ b/docs/architecture/transaction-sequence.md @@ -0,0 +1,19 @@ +```mermaid +sequenceDiagram + participant User + participant PaymentService + participant Database + participant ExternalService + + User->>PaymentService: 결제 요청 + PaymentService->>Database: 트랜잭션 시작 + alt 정상 흐름 + PaymentService->>ExternalService: 결제 처리 요청 + ExternalService-->>PaymentService: 결제 성공 + PaymentService->>Database: 트랜잭션 커밋 + else 외부 실패 + PaymentService->>Database: 트랜잭션 롤백 + else DB 실패 + PaymentService->>Database: 트랜잭션 롤백 + end +``` \ No newline at end of file