1️⃣ 파일 스토리지
서버가 1대일 때는 로컬 디스크에 파일 저장해도 문제 없습니다.
하지만 2대가 되면:
- WAS1에 업로드
- 다음 요청은 WAS2로 라우팅
- 파일 없음 → 오류
해결 방법
- S3 같은 오브젝트 스토리지
- EFS 같은 공유 스토리지
- 최소한 공통 마운트 경로
👉 실무에서 세션보다 파일 문제로 장애나는 경우가 많습니다.
2️⃣ DB 커넥션 수
서버가 2대가 되면:
- DB 커넥션 풀도 2배
- Auto Scaling이면 순간적으로 3~4배
DB max_connections 초과로 장애 발생 가능.
체크 포인트
- HikariCP maxPoolSize
- RDS max_connections
- 커넥션 사용 패턴
3️⃣ 캐시 일관성
서버 메모리 캐시 사용 시:
- WAS1 캐시
- WAS2 캐시
데이터 불일치 발생.
해결
- Redis 등 외부 캐시 사용
- 로컬 캐시는 TTL 짧게
4️⃣ 스케줄러/배치 중복 실행
Spring @Scheduled 같은 작업이 있다면:
서버 2대에서 동일 작업이 동시에 실행됩니다.
예:
- 만료 세션 정리
- 예약 상태 갱신
- 정산 배치
해결
- 분산 락 (Redis, DB lock)
- Leader election
- 별도 배치 서버 분리
👉 이거 고려 안 하면 이중화 후 바로 사고 납니다.
5️⃣ 로그/모니터링
서버가 1대일 때는 로그 파일 하나만 보면 됩니다.
2대 이상이면:
- 로그 중앙 수집 필요
- 장애 시 어느 서버 문제인지 파악 필요
최소 구성
- 중앙 로그 수집
- 헬스체크 모니터링
- 5xx 알람
6️⃣ 환경 변수 / 암호화 키
서버 간 다음 값이 동일해야 합니다:
- JWT secret
- 세션 암호화 키
- 쿠키 서명 키
- SSO 관련 키
다르면 서버 간 인증 불일치 발생.
7️⃣ 트랜잭션 / 동시성
특히 예약/정산 시스템이라면:
- 중복 요청
- 동시 처리
- 재시도 정책
이중화되면 동시성 이슈가 더 자주 드러납니다.
8️⃣ 배포 전략
서버 2대 이상이면:
- 무중단 배포?
- 롤링?
- 블루그린?
DB 마이그레이션 전략도 포함됩니다.
📌 정리
이중화 시 고려해야 할 핵심은:
- 세션
- 파일
- 캐시
- 배치/스케줄러
- DB 커넥션
- 환경 키 일관성
- 모니터링
- 배포 전략
한 줄 요약
클라우드에서 서버 이중화는 인프라 설정이 아니라
애플리케이션 상태와 운영 전략의 문제다
'Developer > Infra & Cloud' 카테고리의 다른 글
| 클라우드에서 서버 이중화 시, 세션은 어떻게 설계해야 하는가 (0) | 2026.02.11 |
|---|---|
| 클라우드에서 서버 이중화, 정말 쉬운가? (0) | 2026.02.11 |
| 클라우드 보안은 네트워크가 아니라 아이덴티티부터 시작한다 (0) | 2026.02.03 |
| 멀티 AZ는 안정성이고, 멀티 리전은 전략이다 (0) | 2026.02.03 |
| was 서버가 죽었다 (0) | 2026.02.03 |



