일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 로드밸런서
- 자바백엔드
- FLAB
- 알고리즘
- 트러블슈팅
- backend
- 멘토링
- 레디스
- 코딩테스트
- 백엔드
- 도커
- error
- F-Lab
- 자바
- 데이터구조
- 후기
- redis
- EC2
- AWS
- 성능테스트
- java
- Spring
- MySQL
- 플러터
- github
- nGrinder
- Flutter
- 부트캠프
- 에프랩
- grafana
- Today
- Total
목록성능테스트 (7)
민스씨의 일취일장
서비스 컨테이너를 하나 더 띄워서 서비스를 이중화 하고, 이를 위해 로드밸런서를 도입하는 과정(Github Issues #18)에 대한 글입니다.로드밸런서 도입해 서비스 이중화하기작업 순서 계획1. 새로운 서버에 동일한 PaymentService 컨테이너 띄우기2. 로드밸런서 서버에 nginx 컨테이너 띄우기3. 로드밸런서와 PaymentService1, 2 연결하기4. 순서대로 로드밸런싱 되는지 확인하기5. 프로메테우스가 PaymentService2와 로드밸런서도 인식할 수 있도록 세팅6. 그라파나 대시 보드 구성하기1. 새로운 서버에 동일한 PaymentService 컨테이너 띄우기AMI를 생성해 기존 세팅을 갖고 있는 서버를 생성해주었다. 컨테이너는 이미 생성돼 있는 상태로 이미지가 만들어 지기 때..
Github Issues #17에 대한 글입니다.성능 테스트 - 적정 환경 찾기이슈nGrinder 컨트롤러와 에이전트를 연결시키고, Prometheus와 Grafana를 이용해 메트릭을 수집하고 시각화하는 것까지 잘 되었다. 그런데 이상하게 어떤 조건에서도 CPU 점유율 양상이나, 평균 반응 시간 등의 그래프가 비슷한 양상을 띄었다. 분명히 조건이 달라진다면 반응도 달라져야 하는데, 언제나 똑같았다.문제 파악문제를 파악하기에 앞서 테스트가 어떻게 이뤄졌었는지 살펴보도록 하겠다.테스트 환경서버 : AWS EC2OS : Amazon-LinuxDatabase : AWS RDS특징 : Docker Container로 구동 테스트 도구nGrinder Controller : 로컬 PC에서 실행nGrinder Age..
Dynmic UserId Case에 대한 성능 테스트 결과 자료이다.Case 3 성능 테스트 결과Dynamic UserId Case는 동적으로 userId를 생성해, 고정 userId와 다르게 모든 요청이 다른 사용자가 접근하는 시나리오이다.Case 2 - Dynamic UserId Case- 고정 Vuser : 10- 테스트 시간 : 1분- 일정한 부하 유지 (Rampup 없음)- 스레드 랜덤 Sleep 없음- 동적 userID 사용특이사항테스트한 프로젝트는 스레드 안전하지 않았다. Case 3에서부터 프로젝트의 스레드 안정성을 높혀가며 테스트를 진행할 예정이다. Connection을 2밖에 사용하지 않으므로 DB에 접근할 수 있는 유휴 Connection은 충분하다. 하지만 CPU 사용량이 100% ..
Simple Case에 대한 성능 테스트 결과 자료이다.성능 테스트 결과Simple Case는 앞으로 성능 테스트의 비교군이 될 가장 기초적인 테스트 케이스이다.Case 1 - Simple Case- 고정 Vuser : 10- 테스트 시간 : 1분- 일정한 부하 유지 (Rampup 없음)- 스레드 랜덤 Sleep 없음- 고정 userID 사용 TPS
이 글은 Github Isssu #12 1-4 nGrinder 동시성 이슈 시나리오 만들기를 다룹니다.nGrinder 동시성 테스트 시나리오 만들기동시성을 고려한 서비스동시성을 고려한 서비스를 만들기 위해 동시성 테스트를 준비하고 있다. 동시성 문제가 유발할 수 있는 환경은 크게 두 가지 방법으로 만들어 낼 수 있다.nGrinder 컨트롤러 설정테스트 Script 수정nGrinder 컨트롤러 설정만으로 동시성 시나리오 구성동시성이라하면 여러명이 동시에 작업을 요청해야 한다. 이를 위해서 여러 Agent를 구성할 수도 있다. 하지만 리소스를 많이 사용하지 못하는 환경에서 작은 규모에 테스트를 진행한다면 하나의 Agent로 동시성 시나리오를 만들 수 있다. 어떻게? 방법은 nGrinder 설정으로 가능하다...
성능 테스트에서 측정할 지표들에 대한 글로, Github Issue #12의 1-2에 대한 내용입니다.성능 테스트 지표들 선정하기성능테스트를 기반으로 프로젝트를 진행할 계획이다. 이를 통해 적절한 최적화를 진행하며 기능들을 추가해 나갈 것이다. 테스트와 모니터링 환경이 구축되었으니 이제 본격적으로 어떤 정보들을 수집해 분석할 것인지 정해야 한다.어떤 것을 측정할 것인가?어떤 성능을 갖춰야 하는지는 프로젝트의 지향점에서 찾으면 된다. 이번 프로젝트의 목표는 "대용량 트래픽을 빠른 속도로 안전하게 처리할 수 있는 고가용성 결제시스템"을 만드는 것이다. 대용량 트래픽을 빠른 속도로 안전하게 처리할 수 있는 고가용성 결제 시스템 목표에서 중요 키워드를 뽑아보자면 다음과 같다.대용량 트래픽빠른 속도안전성고가용성..