Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

실무로배우는시스템성능최적화 Ch1

919 views

Published on

실무로 배우는 시스템 성능 최적화 Ch1. 아꿈사 발표 자료

Published in: Technology
  • Login to see the comments

실무로배우는시스템성능최적화 Ch1

  1. 1. 실무로 배우는 시스템 성능 최적화 Ch1. 성능 기초 아꿈사 Cecil
  2. 2. •성능이란? •성능 특성 •성능 이론 •성능 테스트
  3. 3. 1.1 성능이란?
  4. 4. •시간당 처리량 •주요 영향 요인 • 응답 시간 •동시에 처리할 수 있는 프로세스 수 •고객의 업무 특성과 아키텍처에 따라 다름
  5. 5. 동시 사용자 시스템에 접속을 유지하고 있는 사용자 요청 사용자 + 비 요청 사용자
  6. 6. 처리량 일정 시간 내에 처리한 트랜잭션의 양(TPS) 실행 주체에 따라 트랜잭션이 다름 (ex: API 서버일 경우 API 호출 횟수)
  7. 7. 응답 시간 성능 개선을 위해서는 처리 시간 세분화가 필요
  8. 8. 백분율 응답 시간 그래프 • 사용자중 일정 비율은 제시된 시간에 응답을 받는 것을 확인 • 예외적인 상황에서 응답 시간을 성능평가에서 제외할 목적
  9. 9. 자원 자원은 사용량 변화에 따라 성능에 영향을 미치는 요소 적정성, 효율성, 안정성, 가용성, 확장성을 기준으로 평가
  10. 10. 1.2 성능 특성
  11. 11. 성능 곡선 자원에 대한 경합 발생 구간 시스템의 한계 상황
  12. 12. 성능에 대한 이해 •업무와 시스템 특성에 따라 다름 •모든 경우에 적용할 수 있는 응답 기준은 없음 •동시 사용자 수가 시스템 성능을 의미하지는 않음 •시스템 성능은 비용과 수익으로 평가가 가능
  13. 13. 1.3 성능 이론
  14. 14. 서비스 요청 간격 = 응답 시간 + 생각 시간 동시 사용자 수 = 요청 사용자 수 + 비 요청 사용자 수
  15. 15. 리틀의 법칙 처리량(TPS) = 서비스 처리 건수 / 측정 시간(초 ) = 요청 사용자 수 / 평균 응답시간( 초) = 동시 사용자 수 / 서비스 요청 간 격(초)
  16. 16. • 시간당 1,000,000건의 카드 승인을 처리하는 시스 템 •1,000,000 / 3,600 = 278 TPS •요청 사용자수 100명, 평균 응답시간 2초 •100 / 2 = 50 TPS •동시 사용자수 3000명, 평균 30초 마다 입력 •3,000 / 30 = 100 TPS(이정도의 처리량이 필 요)
  17. 17. • 요청 사용자 수 = 동시 사용자 수 * (평균 응답시간 / 서비스 요 청 간격) = 동시 사용자 수 * (평균 응답시간 / (평균 응답시간 + 생각 시간) • 평균 응답시간 = (동시 사용자 수 / 처리량) - 생각시간 ex) 동시 사용자가 600명일때 처리량이 20TPS, 응답시간이 3초라 면 - 평균 응답시간: (600 /20) - 3 = 27초.
  18. 18. 사용률 이론 서비스 시간과 처리량을 기반으로 자원 사용률을 계 산 단일 자원 사용율 = 사용 시간 / 측정 시간 - 처리량 = 서비스 건수 / 측정 시간 => 측정 시간 = 서비스 건수 / 처리량 - 서비스 시간 = 사용 시간 / 서비스 건수 => 사용 시간 = 서비스 건수 * 서비스 시간 - 즉, 단일 자용 사용율 = 처리량 * 서비스 시간 ex) CPU 가 초당 100개씩 처리, 1개 처리하는데 1.5ms 소 요할 경우 사용율: 100 * 0.0015 = 15%
  19. 19. 비율 분석 A블록과 B 블록의 전체 처리량 = 요청 사용자수 / (A 응답시간 + B 응답시간) = 1 / ((1 / A 처리량) + (1 / B 처리량) 업무 서비스 요청 비율을 고려 할 경우 = 1 / ((A 요청 비율 / A 처리량) + (B 요청 비율 / B 처리량) ex) A: 20TPS 초당 15개 요청 발생, B: 20TPS 초당 5개 요 청 발생 전체 처리량 = 1 / (0.75/20 + 0.25/200) = 25.8 TPS
  20. 20. 1.4 성능 테스트
  21. 21. 성능 테스트 유형 성능, 과부하, 안정성, 최적화, 가용성, 실사용자, 벤치마크, 파일럿
  22. 22. 성능 테스트 구성 요소 부하 모델, 업무 시나리오, 테스트 데이터, 적용 부하, 테스트 환경, 평가 기준, 측정 항목, 부하 발생기, 가상 사용자, 테스트 스크립트
  23. 23. 성능 테스트 시 주의 사항• 테스트 데이터 • 운영과 동일한 다양성을 갖추고, 동일한 양을 가지고 테 스트 • 화면 처리 시간 • 성능 테스트와 별도로 중요 화면에 대한 응답시간을 확인 • 네트워크 • 실제 사용자가 어디에 위치할 것인지 확인 • 가상 사용자 특성 • 가상 사용자와 실 사용자가 다른 패턴을 보이는 경우가 있음 • 업무 시나리오 • 실제 시나리오를 가장한 테스트가 필요 (ex: 배치 작업 수 행중)
  24. 24. References •권문수. 실무로 배우는 시스템 성능 최적화. 경 기도 파주시 위키 북스, 2016.

×