TIL
[성능 테스트] 성능테스트 기본 지식
oraange
2022. 7. 4. 17:43
1. 웹 시스템 가용성
- 가용성: 서버와 네트워크 등의 시스템이 정상적으로 사용 가능한 정도(Availability) 즉, 서비스가 다운되지 않고 정상적으로 서비스를 유지하는 것
서비스가 다운되는 이유: 네트워크 장애, 전원 장애, 하드웨어 문제, 소프트웨어 오류, 서비스 점검시간 등
2. 높은 가용성을 가지는 시스템을 설계하는 방법
서비스가 정상적으로 작동되지 않는 시간을 최대한 짧게 만든다.
- 시스템 확장
- Scale Up/Down
- Scale Out/In
- 시스템 이중화
- 시스템 백업 배치 운용 (이중화, 삼중화)
- 멀티 클라우드
Scale-Up
기존의 서버를 보다 높은 사양으로 업그레이드하는 것을 말한다.
하나의 서버의 능력을 증강하기 때문에 수직 스케일링(vertical scaling)
이라고 한다.
Scale-Down
Scale-Up
의 반대. 다운그레이드
Scale-Out
Scale-Out
은 장비를 추가해서 확장하는 방식이다. 기존 서버만으로 용량이나 성능의 한계에 도달했을 때, 비슷한 사양의 서버를 추가하여 기존 서버의 부하를 분담해 성능 향상을 기대할 수 있다.
서버를 추가로 확장하기 때문에 수평 스케일링(horizontal scaling)
이라고도 불린다.
Scale-In
Scale-Out
의 반대
장단점 비교
3. 부하 테스트 기본 지식
- 테스트 목적: 병목지점과 같은 성능 이슈를 찾아 시스템의 가용성을 높이는 것
- 성능에 문제를 줄 수 있는 것들
- 사용자 증가
- 동시간에 많은 배치 작업 발생
- 급증하는 DB 참조 > DB Lock
- 캐시 문제: 캐시는 부하 테스트 시 성능 차이가 많이 날 수 있다.
- 시스템 성능 지표
- TPS(Transaction Per Second)
- TPS = (Active User) / (Average Response Time)
- TPS(Transaction Per Second)
반응형