일단 아주 간단하게 부하테스트가 뭐고, 어디에 사용하고 예시 grinder 동작을 잠깐 살펴봤다.
근데 스터디를 들어가기 위해서는 기본적으로 동작 하는 구조를 알아야 하기에 그냥 내가 이해한대로 적어보겠다.
일단 세가지 파트로 보고 내가 생각하기에 각 파트별로 필요한 기술 범위를 적어보겠다. (내 공부용이고 정확하지 않음)
admin
- 테스트 시나리오(스크립트) 를 실행/중단 하도록 명령 내림
- 실제 테스트 실행 주체인 agent를 스케일링 함 (시나리오 따라서 필요한 부하만큼 조절)
- 시나리오 수행 모니터링 (수행이 잘 되고 있는지, 기록이 잘 되는지, 분석에 문제가 없는지 등등)
- 필요 기술 : 웹- view (수행 모니터링 및 명령용) 내부 (에이전트에 명령, 에이전트 증가 등 오케스트레이션 )
agent
- 실제로 시나리오를 수행 : 시나리오는 대부분 실제 서비스에 request 날리고 response 받는 형태임 (응답시간, 정상 응답 여부 등을 로그로 기록)
- 시나리오 수행 결과 기록
- 기록한 결과를 분석하도록 전달
- 필요 기술: 요청 날리는건 그냥 rest 로 날릴 수 있을 것 같음 (api 부하 테스트면,,?) 근데 내가 쓰레드나 프로세스 개념이 약해서 정확히 어떻게 부하를 부여하는지 감이 잘 안잡힘
analysis
- 기록된 결과를 받아서 용도에 맞게 분석
- 그래프화 햐여 보여줌
- 필요 기술: 로그 형태를 어떻게 분석할지 -> elk 같은거
일단 기본 배경지식으로 공부할 거
- 쓰레드
- 로그, 로그분석
- 컨테이너 오케스트레이션 등 기본 개념