공유할 서비스 선택

TECH


TECH

Middleware (오픈소스 활용-31) (부하테스트 Tool) Jmeter 를 활용한 JDBC 부하테스트 방법 -2

페이지 정보

작성자 미들웨어 아이디로 검색 전체게시물 댓글 0건 조회 436회 좋아요 0회 작성일 24-05-21 15:08

본문

안녕하세요. "미들웨어" 입니다.  

 

지난번에 이어  Jmeter 를 활용한 JDBC 부하테스트 방법 -2를 진행하겠습니다. 

지난 가이드에서는 Jmeter를 설치하고 구성하는 방법을 자세히 다뤘으니 오늘은 부하 테스트를 하는 방법에 대해 자세히 다뤄 보겠습니다. 




5. Jmeter update 시나리오 설계

File-New 로 새로 만들기 지정

1265e130a1ff3d559f532815c70f47ee_1716271154_8581.png


모든 과정은 insert 와 같고 Update Query 부분만 아래와 같이 수정합니다.

Query : update employees set job_title = lpad('${empid}',200,'A') where employee_id = '${empid}'

empid 로 UK액세스 후에 job_title 이라는 값을 null 에서 200 byte 패딩후 업데이트 함.

(자리수는 시나리오, 요구 업데이트 부하량에 에 따라 조정)

1265e130a1ff3d559f532815c70f47ee_1716271166_9428.png
작성한 파일은 update.jmx 로 저장합니다.




6. Jmeter RAC 동시 부하 시나리오 설계

File-New 로 새로 만들기 지정

1265e130a1ff3d559f532815c70f47ee_1716271179_1462.png


모든 과정은 위 시나리오와 같고, Database URL을 Scan IP로 지정함

(예시) jdbc:oracle:thin@://db-scan:1521/BMTDB

1265e130a1ff3d559f532815c70f47ee_1716271195_0485.png
각각 insert, update 에 대한 RAC 부하 시나리오를 작성하고, insert_scan.jmx, insert_update.jmx 로 저장합니다.




7. 부하 테스트 수행 GUI 모드

작성된 시나리오 jmx 파일을 불러온 후, start 버튼을 누르면 부하테스트가 실행됩니다.

1265e130a1ff3d559f532815c70f47ee_1716271210_0463.png


Summary Report 를 통해 수행된 트랜잭션 수(Samples), Throughput/sec 값을 모니터링 할 수 있습니다.

1265e130a1ff3d559f532815c70f47ee_1716271223_6364.png



8. 부하 테스트 수행 CLI 모드

jmeter -n -t <시나리오.jmx 파일> -l <로그파일> 방식으로 cli 모드로 수행 가능합니다.

시나리오 디자인은 GUI모드로 하고 실부하 테스트는 CLI모드로 해야 주어진 환경에서 최상의 부하 성능을 낼 수 있습니다.

부하 수행 예시 스크립트

[oracle@hol script]$ cat 40_insert.sh

sqlplus test/test@pdb2 <<!

exec dbms_workload_repository.create_snapshot ();

exit

!

 

 

rm 40_insert.log

/home/oracle/script/apache-jmeter-5.4.1/bin/jmeter -n -t ./insert.jmx -l 40_insert.log

 

sqlplus test/test@pdb2 <<! exec dbms_workload_repository.create_snapshot ();

exit

!

 

 

[oracle@hol script]$ cat 50_update.sh sqlplus test/test@pdb2 <<! 

exec dbms_workload_repository.create_snapshot ();

exit

!

 

rm 50_update.log /home/oracle/script/apache-jmeter-5.4.1/bin/jmeter -n -t ./update.jmx -l 50_update.log

 

 

sqlplus test/test@pdb2 <<! 

exec dbms_workload_repository.create_snapshot (); 

exit

!

 

CLI insert 스크립트 수행 결과 (OCI VM.Std.8 balanced Block Storage 에서 수행한 결과 - 800만건 insert에 5분40초 소요, 평균 20272.7 TPS 나옴)



[oracle@hol script]$ ./40_insert.sh 

SQL*Plus: Release 19.0.0.0.0 - Production on Mon Sep 13 05:33:35 2021 Version 19.12.0.0.0

 

Copyright (c) 1982, 2021, Oracle. All rights reserved. Last Successful login time: Mon Sep 13 2021 05:33:12 +00:00

Connected to: Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Version 19.12.0.0.0

 

 

OLTP@pdb2> PL/SQL procedure successfully completed.

Elapsed: 00:00:03.21 

OLTP@pdb2> Disconnected from Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Version 19.12.0.0.0 

 

Creating summariser <summary> Created the tree successfully using ./insert.jmx Starting standalone test @ Mon Sep 13 05:33:40 GMT 2021 (1631511220531) Waiting for possible Shutdown/StopTestNow/HeapDump/ThreadDump message on port 4445 summary + 107472 in 00:00:19 = 5627.7/s Avg: 83 Min: 0 Max: 18376 Err: 0 (0.00%)

Active: ... 생략 

 

OLTP@pdb2> PL/SQL procedure successfully completed. Elapsed: 00:00:02.81

OLTP@pdb2> Disconnected from Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Version 19.12.0.0.0 [oracle@script]$


헤당 내용 보시고 Jmeter 을 활용하여 DB 테스트를 수행하시면 됩니다.

그럼.. 열공하세요~!







댓글목록

등록된 댓글이 없습니다.

TECH 목록
번호 제목 작성자 작성일 조회수
219 Middleware 미들웨어 아이디로 검색 전체게시물 07-22 29
(오픈소스 활용-33) "ISTIO 이스티오" 쿠버네티스 서비스 시각화 구현에 필요한 데모설치

카테고리 : Middleware

29 0
작성자 : 미들웨어 24/07/22
218 OS OSworker 아이디로 검색 전체게시물 07-21 50
RHEL7.9 가 2028년 6월30일까지 지원되시는거 아시나요? #ELS

카테고리 : OS

50 0
작성자 : OSworker 24/07/21
217 OS OSworker 아이디로 검색 전체게시물 07-10 140
[보안취약점] OpenSSH의 서버(sshd)에서 보안 회귀(CVE-2006-5051)가 발견되었습니다.

카테고리 : OS

140 0
작성자 : OSworker 24/07/10
216 Middleware 미들웨어 아이디로 검색 전체게시물 07-10 74
(Apache) mod_wl.so 에서 sticky session 사용방법 정리

카테고리 : Middleware

74 0
작성자 : 미들웨어 24/07/10
215 OS OSworker 아이디로 검색 전체게시물 06-29 131
CVE, RHSA, RHBA 의 대해 아시나요?

카테고리 : OS

131 0
작성자 : OSworker 24/06/29
214 Middleware 미들웨어 아이디로 검색 전체게시물 06-24 146
(오픈소스 활용-32) Apache Kafka 란? 다운로드 및 샘플 소개

카테고리 : Middleware

146 0
작성자 : 미들웨어 24/06/24
213 OS OSworker 아이디로 검색 전체게시물 06-23 231
Red Hat Enterprise Linux 8.10 에 대해 간략하게 알아보겠습니다.~

카테고리 : OS

231 0
작성자 : OSworker 24/06/23
212 OS OSworker 아이디로 검색 전체게시물 06-09 357
패키지의 변경 로그를 보는 방법에 대해 아시나요? #chagelog

카테고리 : OS

357 0
작성자 : OSworker 24/06/09
211 Middleware 미들웨어 아이디로 검색 전체게시물 06-07 338
(Apache) Apache & Webtier에서 Nginx와 동일한 비동기 방식 처리 하기 (MPM-event)

카테고리 : Middleware

338 0
작성자 : 미들웨어 24/06/07
210 OS OSworker 아이디로 검색 전체게시물 05-25 549
Log를 한 곳에서 볼 수 있도록 Log Server 구성에 대해 알아보겠습니다.

카테고리 : OS

549 0
작성자 : OSworker 24/05/25
Total 219건
게시물 검색

주식회사 클럭스| 대표 : 이찬호| 사업자등록번호 : 107-87-27655
주소 : 서울특별시 영등포구 국회대로 800, 여의도파라곤
E-mail : sales@chlux.co.kr
Copyright © 클럭스 www.chlux.co.kr All rights reserved.
상단으로Top