티스토리 뷰

hhplus

가상 장애 대응 방안 보고서

seungwonlee 2025. 1. 3. 18:50

1. 개요

이 보고서는 콘서트 예약 시스템의 부하 테스트 결과를 기반으로 발생할 수 있는 다양한 장애 상황과 이에 대한 대응 방안을 제시하고, 이를 통해 시스템의 안정적인 운영을 위해 필요한 전략과 개선 방향을 정리합니다.


2. 가상 장애 대응 문서

인기 콘서트의 좌석 정보 조회

상황

다수의 사용자가 동시에 인기 있는 콘서트의 좌석 정보를 조회하는 경우

장애 발생 시나리오

많은 사용자가 동시에 동일한 데이터를 조회하면서 데이터베이스 서버에 과부하가 발생하고, 이로 인해 응답 시간이 급격히 증가하거나 DB가 다운되는 상황이 발생할 수 있습니다.

병목 구간

인기 콘서트 좌석 정보를 조회하는 쿼리가 동시에 여러 요청을 처리하려 할 때 DB에 과도한 부하가 발생합니다. 적절한 인덱스가 없거나 기존 인덱스가 비효율적으로 설계된 경우, 조회 속도가 급격히 저하될 수 있습니다.

개선 방향

자주 사용되는 조회 조건에 대해 인덱스를 적용하여 조회 성능을 최적화합니다. 이를 통해 DB가 빠르게 조회 작업을 처리할 수 있도록 합니다. 인기 콘서트의 좌석 정보 조회 시 다수의 조건이 조합되기 때문에, 복합 인덱스를 사용하여 성능을 더욱 개선할 수 있습니다. 자주 조회되는 인기 콘서트의 좌석 정보를 캐싱하여, DB에 불필요한 반복 요청이 발생하지 않도록 합니다.

결론 및 대응 방안

인기 콘서트의 좌석 정보를 조회하는 상황에서 발생할 수 있는 DB 부하 문제는 인덱스 최적화와 쿼리 튜닝을 통해 해결할 수 있습니다. 또한, 캐싱 전략을 통해 DB의 응답 속도를 빠르게 유지할 수 있습니다.


3. 인덱스를 활용한 성능 비교

인덱스 미적용

인덱스 미적용
인덱스 미적용

인덱스 적용

인덱스 적용
인덱스 적용

 

응답 시간 분석

  • 인덱스 적용: 평균 응답 시간은 약 374.6ms이며, 최대 응답 시간은 1.47s입니다. 90번째 백분위 응답 시간은 1.07s이고, 95번째 백분위 응답 시간은 1.27s입니다. http_req_waiting의 평균 시간은 374.21ms입니다.
  • 인덱스 미적용: 평균 응답 시간은 736.41ms이며, 최대 응답 시간은 1.74s입니다. 90번째 백분위 응답 시간은 1.12s이고, 95번째 백분위 응답 시간은 1.16s입니다. http_req_waiting의 평균 시간은 735.91ms입니다.

인덱스를 적용한 경우, 요청 처리 시간이 평균적으로 2배 정도 더 빠릅니다. http_req_duration과 http_req_waiting 모두 인덱스 적용 시 현저히 짧아졌음을 확인할 수 있습니다. 이는 인덱스가 조회 성능을 크게 개선했음을 나타냅니다.

전체 처리량 분석

  • 인덱스 적용: 초당 14.09 요청 처리, 초당 4.69 반복 처리
  • 인덱스 미적용: 초당 9.33 요청 처리, 초당 3.11 반복 처리

인덱스를 적용한 경우 초당 처리되는 요청 수와 반복 횟수가 모두 증가했습니다. 이는 인덱스가 쿼리 성능을 높여, 더 많은 요청을 더 빠르게 처리할 수 있게 도와줬음을 나타냅니다.


4. 결론

인덱스를 적용하면 평균 응답 시간이 약 50% 이상 단축되며 처리량도 크게 향상됩니다. 인덱스를 적용함으로써 DB에 대한 부하가 줄어들어 요청 차단 시간과 연결 시간이 감소하고, 전체적으로 시스템의 성능이 개선됩니다. 이로 인해 더 많은 요청을 동시에 처리할 수 있게 되며, 데이터 수신과 전송 효율도 높아졌습니다.

 

끝.

 

 

728x90
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/04   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30
글 보관함