개발관련
성능테스트
애너테이션
2023. 8. 8. 13:21
728x90
성능테스트
JMETER
- 클라우드 기반 테스트
- 하나의 컴퓨터로 트래픽 수가 한정되어 여러대를 동시에 사용하는 대신 클라우드 기반 테스트
- CPU 2코어, 메모리 4GB 가상머신 1대당 동시접속 1만 배정
- 가상머신 총 100대 → 1회테스트 32,000원 (네트워크 비용 제외)
- CI/CD
- 코드배포 후 자동 성능테스트
- 젠킨스 jmeter플러그인
- github PerfAction
- Monitoring
- Jmeter backend listener → 도구를 통한 확인 가능
- 성능테스트 결과를 db에 입력 가능(JDBC지원 가능)
- elasticsearch - kibana로 확인
- grafana
- Jmeter backend listener → 도구를 통한 확인 가능
- 실제 테스트 내용
- 50명 동시 부하테스트 결과
- 5초 이상 걸리는 것들 분석결과 (쿼리가 길었다)
- 쿼리튜닝대신 redis 캐시를 활용하여 부하를 분산하였다.
- 5초 이상 걸리는 것들 분석결과 (쿼리가 길었다)
- 지도 서비스
- logstash가 메인 ap보다 cpu를 많이 차지함지
- 로그 분석에 힘을 줬기 때문 << logstash 설정 변경하여 부하 줄임
- 50명 동시 부하테스트 결과
프론트엔드 테스트
- 웹 성능 개선이란?
- 전체 로드 시간 단축
- 기능 로딩
- 버튼을 눌렀을때 기능
- 상호작용
- 클릭이벤트에 대한 반응 등
- 로딩성능 / 랜더링 성능
- 리소스를 빨리 받는 로딩성능
- 받은 리소스를 빠르게 그리는 랜더링 성능
- 크롬 브라우저 개발자도구
- 로딩성능 측정 방법
- 네트워크탭

캐싱처리만 해도 더 속도를 줄일 수 있다.
- 네트워크탭
- 로딩성능 측정 방법
- 랜더링성능 측정 방법
- 브라우저에서 html을 그릴때는 순서가 있다

- 브라우저에서 html을 그릴때는 순서가 있다
DOM을 구성 시점별 확인 가능
body내에 sciprt로 이미지를 넣으면 html파싱 두번안함
Lighthouse 사용하여 개선
[로딩성능 + 랜더링 성능 + 사용자 경험 ] 을 점수화 해줌
728x90