타임딜 운영 주의사항
재고 수동 조정 시 필수 절차
RDS와 Redis를 반드시 동시에 수정해야 함 하나만 수정하면 데이터 불일치 발생
RDS 수정
UPDATE products
SET stock = 100, "initialStock" = 100
WHERE id = 1;stock: DB 재고 (결제 성공 시 -1 되는 값)initialStock: Redis 재건 기준값 (이 값 기준으로 Redis 초기화됨)
Redis 수정
redis-cli SET stock:{product_id} 100
# 예시
redis-cli SET stock:1 100주의사항
| 케이스 | 결과 |
|---|---|
| Redis만 수정 | DB 불일치 → Redis 재건 시 다시 꼬임 |
| DB만 수정 | Redis 재고 그대로 → 주문 안 들어옴 |
| 둘 다 수정 | 정상 |
재고 구조 (백엔드)
Product.java 기준:
initialStock: 초기 총 재고, 변경 불가 원칙 (Redis 재건 기준)stock: DB 재고, 결제 성공 시 감소- Redis (
stock:{id}): 실시간 재고, 주문 시도 시 DECR
등록 시: stock = initialStock = 입력값, Redis도 동일하게 초기화
어드민 페이지 접속
- URL:
/admin - Mock 계정:
admin@test.com/123456 - 실제 배포 시 AdminRoute의 이메일 하드코딩 → 백엔드 role 기반으로 교체 필요