✅ 1. 웹 서버(Web Server) 오류 및 장애 현상
문제현상주요 원인해결 방안
| 404 Not Found | URL 오타, 리소스 없음, 라우팅 미스 | 리소스 경로 확인, URL 재설정, 리버스 프록시 설정 확인 (예: Nginx location 설정) |
| 403 Forbidden | 권한 오류, 접근 제어 정책 위반 | 파일/디렉토리 퍼미션 확인, SELinux/AppArmor 설정 점검 |
| 500 Internal Server Error | 애플리케이션 버그, PHP/Python 오류, 설정 파일 오류 | 웹서버 로그(Nginx: /var/log/nginx/error.log) 확인 후, 코드/설정 수정 |
| 504 Gateway Timeout | 백엔드(WAS) 응답 지연/실패 | WAS 상태 확인, WAS 응답시간 개선 (쿼리 튜닝 등), timeout 값 조정 (proxy_read_timeout) |
| 서비스 간헐적 지연 | 트래픽 과다, Keepalive 설정 오류 | 웹서버 connection 설정 조정 (worker_connections, keepalive_timeout) |
✅ 2. WAS(Web Application Server) 오류 및 장애 현상
문제현상주요 원인해결 방안
| 응답 없음(Hang) | GC 과다, 스레드 풀 고갈, DB 커넥션 풀 고갈 | GC 로그 확인, 스레드/커넥션 풀 조정, WAS 재기동 |
| 메모리 누수 | 애플리케이션에서 객체 미해제 | Heap dump 분석, 의심 클래스 추적 및 수정 |
| OutOfMemoryError | JVM Heap 부족 | JVM 옵션 튜닝 (-Xms, -Xmx), 캐시 전략 개선 |
| High CPU 사용률 | 무한 루프, 동시성 이슈, GC | jstack, top, jstat 등으로 스레드 분석 |
| DB 응답 지연 | 쿼리 성능 이슈, 인덱스 미적용 | 슬로우 쿼리 로그 확인, 쿼리 튜닝 |
| WAS 재시작 반복 (Crash Loop) | 환경 변수 설정 오류, WAR/EAR 배포 실패 | 배포 프로세스 점검, 로그 분석(catalina.out, nohup.out) |
✅ 3. Web-WAS 연동 지연/오류 사례
현상원인조치
| WAS는 정상인데, 웹에서만 지연 | 프록시 타임아웃 설정 미스 (proxy_pass, keepalive) | 웹서버 타임아웃 설정 확인 및 조정 |
| 프록시된 리소스 응답 실패 | 프록시 설정 오류 (upstream 주소 틀림) | nginx.conf 또는 httpd.conf에서 proxy_pass, upstream 설정 검토 |
| SSL 인증서 오류 | 인증서 만료, 체인 불완전 | 인증서 재발급 또는 체인 포함 재설정 |
| 세션 공유 안됨 (로드밸런싱 이슈) | Sticky Session 미설정 | ip_hash, route 기반 세션 유지 설정 적용 |
✅ 4. 운영 중 대응 우선순위
단계내용
| 1단계 | 모니터링 시스템(Zabbix, Prometheus, ELK 등)에서 알람 감지 |
| 2단계 | 웹/WAS 로그 확인 (시간 동기화가 중요) |
| 3단계 | 재현 테스트 또는 헬스 체크로 영향 범위 확인 |
| 4단계 | 네트워크, DB, 인프라 자원 (CPU, 메모리, Disk I/O 등) 확인 |
| 5단계 | 롤백 또는 서비스 Graceful Restart (무중단 재기동 고려) |
✅ 실무에서 반드시 준비해야 할 체크리스트
- Nginx/Apache, WAS(Tomcat, JBoss 등)별 로그 위치 및 필터링 방법 숙지
- JVM Heap/GC 튜닝, APM 도구(New Relic, Pinpoint) 사용법
- 무중단 배포(Zero-downtime deploy) 전략 이해
- 시스템 리소스 모니터링 도구(top, iostat, netstat, ss 등)
- 오류 시 시나리오 기반 롤백 계획 및 트래픽 분산 기술 (로드밸런서, Blue-Green 배포)
'WEB & WAS' 카테고리의 다른 글
| 서비스 지연 시 WAS, DB서버에서 확인, 조치 사항 (0) | 2025.09.03 |
|---|---|
| WEB & WAS 장애 및 조치방법(100) (0) | 2025.07.18 |
| 세션 클러스터링 (0) | 2025.07.18 |
| WEB에서 지연이 발생하면 (0) | 2025.07.18 |