본문 바로가기
반응형

전체 글264

01. CPU 성능분석의 이해 CPU 성능분석 - CPU는 모든 소프트웨어 실행을 담당 -> 성능 분석 시 가장 먼저 봐야하는 대상 - CPU는 모든 실행이 필요한 프로세스가 사용 . CPU 코어 개수 대기열에 들어가서 자신의 순서를 기다려야 함 -> 프로세스 스케줄러가 순서를 정함 -> O(1) 스케줄러는 Queue를 순서를 관리, CFS 스케줄러는 Tree를 이용해 순서를 관리 클럭 속도 - CPU는 클럭 속도에 따라 명령을 실행 - 전력 소모를 위해 클럭 속도를 조정할 수 있음 예, x86은 p-state, arm(예, 스마트폰)은 DVFS - 클라우드 환경 . 일부 인스턴스 타입에 대해서만 조정 기능 지원 . 기본 p-state가 0이라 별도로 조정할 이유가 제한적임 -> 과금은 클럭 기준이 아니라.. 2022. 12. 19.
03. 성능분석 방법론 방법론이 필요 - 주니어 -> 어디서부터 시작하고, 어떻게 진행해야 하는지에 대한 안내 - 시니어 -> 빠뜨린 세부 사항이 없는지 검사하기 위한 체크리스트 성능 이슈 분석 방법론 - USE (Utilization Saturation Error) 방법 - RED (request Rate, request Error, request Duration) 방법 - 과학적 접근 방법 - 지연시간 분석 USE 방법론 - 모든 자원에 대해, 사용률/포화도/오류를 확인 - 인프라 레벨의 성능 분석에 적합 . Utilization(사용률) - 자원을 바쁘게 사용한 시간 - 예) CPU 하나가 90% 사용률로 동작 . Saturation(포화도) - 처리되지 못한 자원이 있는 수준 (대기 큐의 길이로 확인) - 예) CPU의.. 2022. 12. 19.
02. 사례 소개 성능 분석 어떻게 하는건가요? -> 사례를 기반으로 조금 더 구체화 해보겠습니다 사례1. 데이터베이스 서버 한대가 디스크 성능 저하 이슈가 발생 - 문제 발견 (데이터베이스팀) . 1초 이상 걸리는 질의 로그 . 지난주에 시간당 12번 이상 발생 . 특정 스토리지가 사용 중임을 발견 - 문제 분석 (성능 분석팀) 1. USE 방법론 사용 (Utilization, Saturation, Error) - 사용률: CPU, Network 사용률은 낮음, Disk사용률이 높음 - 포화도: Disk의 평균 I/O 지연시간 증가 -> 디스크 부하 문제 확인 - 오류: Disk 오류는 없음 2. Disk I/O 지연 원인 분석 - 디스크 파편화? -> 파일 시스템의 사용량은 30% - 드릴다운 분석 방법은 시간이 많이.. 2022. 12. 19.
01. 개념 소개 이번 강의에서 바라보는 시스템의 범위 - 하나의 시스템 내에서 End-to-End -> 어플리케이션 + 시스템 라이브러리 + 커널 + 하드웨어 - 분산 시스템은 범위 밖 -> 하지만 분산 시스템의 전체 흐름을 이해하려면, 여전히 개별 시스템의 성능 분석 역량이 필요 시스템 성능 분석 - 하드웨어와 소프트웨어 스택 전체에 대한 분석 - 분석 관점은 주체에 따라 차이가 있음 . 개발자는 워크로드를 분석하는 것에서 시작 -> 어플리케이션의 동작 관점 . 시스템 관리자는 자원의 사용을 분석하는 것에서 시작 -> 모든 앱은 그냥 리눅스 프로세스 -> 인프라가 워크로드를 잘 지탱했는지 관점 시스템 성능 분석은 쉽지 않습니다. - 성능은 주관적인 의미 질문) I/O 응답 시간은 1ms인 디스크는 성능이 좋은 디스크?.. 2022. 12. 19.
반응형