[WebtoB] Jmeter를 활용하여 다중 IP 호출 확인하기
https://pushstonez.tistory.com/13
[WebtoB] X-Forwarded-For(XFF) 설정
X-Forwarded-For(XFF) 란? XFF는 Http Header 중 하나로 HTTP Server에 요청한 Client의 IP를 식별하기 위한 표준 웹서버나 WAS 앞에 L4 같은 로드 밸런서나 Proxy Server, Caching Server 등의 장비가 있을 경우, 웹서버는 P
pushstonez.tistory.com
WebtoB의 X-Forwarded-For 설정을 마친 후 다중 IP를 사용하여 테스트를 진행한다.
0. Jmeter?
Apache JMeter는 서버가 제공하는 성능 및 부하를 측정할 수 있는 테스트 도구다.
JMeter는 순수 Java 애플리케이션 오픈소스이며 서버나 네트워크 또는 개체에 대해 과부하를 시뮬레이션하여 강도를 테스트하거나 다양한 부하 유형에서 전체 성능을 분석하는 데 사용할 수 있다.
1. Jmeter 설치
1. https://jmeter.apache.org/ 에 접속한다.
Apache JMeter - Apache JMeter™
Apache JMeter™ The Apache JMeter™ application is open source software, a 100% pure Java application designed to load test functional behavior and measure performance. It was originally designed for testing Web Applications but has since expanded to oth
jmeter.apache.org
2. Download → Download Releases 를 선택한다.
3. Binaries -> jmeter-*.zip 파일을 다운로드 받는다.
4.적당한 위치에 압축을 해제 한 후, bin 디렉토리 내 jmeter.bat 파일을 실행한다.
5. Apache Jmeter 창이 제대로 떴다면 설치 완료.
2. Jmeter 설정
1. Thread Group 생성 및 설정
Thread Group은 하나의 Test Case 이다.
(마우스 우클릭) Test Plan → Add → Threads → Thread Group 선택
- Number of Threads : Thread 생성 수 (test: 10)
- Ramp-up period : Thread를 Ramp-up preiod 시간 만큼 실행 (test: 1)
- Loop Count : Thread의 반복 횟수 (test: 30)
2. HTTP Request 생성 및 설정
(마우스 우클릭) Thread Group → Add → Sampler → Htto Request 선택
BASIC 과 Advanced 탭을 선택하여 설정한다.
BASIC
- Server Name or IP : 접속할 WEB SERVER IP 또는 Domain을 입력한다. (test: WEB Server IP)
- Port Number : 서비스 Open 된 Port를 입력한다. (test: 80)
Advanced
- Implementation : X-Forwarded-For 설정을 위해 HttpClient4 로 변경한다.
3. CSV Data Set Config 생성 및 설정
(마우스 우클릭) Test Plan → Add → Config Element→ CSV Data Set Config 선택
- Filename : 다중 IP가 설정되어 있는 파일을 선택해준다. (절대경로)
- Variable Names : HTTP Header 설정에서 가져올 변수 명을 설정한다. (test: IP_LIST)
4. HTTP Header Manager 생성 및 설정
(마우스 우클릭) Http Request → Add → Config Element→ HTTP Header Manager 선택
- Headers Stored in the Header Manager : 요청과 함께 전달될 헤더 필드 목록 (Name : X-Forwarded-For , Value : ${IP_LIST}
모든 설정을 완료 후 하단의 Save 버튼을 통해 설정 값을 저장한다.
3. Test
1. WebtoB 기동
2. Jmeter 실행
Jmeter 상단의 실행 버튼을 통해 JMeter 테스트를 시작한다.
3. Access 로그 모니터링
tail -F {accesslog name}
ip_list에 설정한 IP 들의 요청을 확인할 수 있다.