ABTCEFG♪ 안녕하세요, 여러분!
BTC_뚜벅이입니다.
기초 탄탄 인프라에 대한 개념을 잡는 시간입니다.
오늘은 병목현상에 대해 알아보도록 할게요.
병목현상이란
병목현상의 의미
쉽게 생각하면 일상에서 병목현상의 개념을 교통량이 정체되어 출퇴근이 혼잡한 시간대에서 찾을 수 있습니다.
이를 인프라 아키텍처 용어로는 처리량을 제한하고 있는 요인으로 병(Bottle)+목(Neck)의 합성어입니다.
위 그림을 보면 이해가 빠르실거에요.
가운데 부분이 좁기 때문에 대기열의 요청이 통과되려면 많은 시간이 걸립니다.
이를 병목현상이라고 이해하면 좋을 거 같습니다!
병목현상 접근 시 알아야 할 점
- 성능 분석의 시작은 병목 현상이 발생하고 있는 위치 정확히 파악
- 각 서버의 처리량 응답 상황 로그를 취득해서 병목 지점이 되고 있는지 발견하기
- 대부분의 병목 현상은 예상보다 많은 부하가 걸려 발생
해결방법
- 튜닝(병목 위치를 파악해서 해결)
- 유량 제어(시스템 이용자 수 제한) : 유량 제어는 사용자에게 에러를 반환하는 것이 전부라서 근본적인 해결책x
- 샤딩(수평 분할) : 서버 증설
주의사항
- 응답이 느리다면 APP 서버가 병목지점일 수 있습니다.
- APP서버가 병목지점이기 때문에 이를 늘리면 기대와 달리 DB서버에서 새로운 병목현상이 발생하게 됩니다.
성능 개선 접근법에는 끝이 없으므로 시스템 관점에서 목표를 세우는 것이 매우 중요합니다.
'IT KNOWLEDGE' 카테고리의 다른 글
표준프레임워크 eGovFrame 소개 (0) | 2022.06.24 |
---|---|
인프라 엔지니어 관점으로 봐야 할 네트워크 토폴로지 (0) | 2022.06.24 |
리눅스 마스터에 대해 알아보자![1급 + 2급] (0) | 2022.06.20 |
Prometheus(1) (0) | 2022.06.17 |
인프라 엔지니어 관점에서 바라보는 네트워크 장비 (2) [스위치] (0) | 2022.06.16 |
댓글