공유할 서비스 선택

TECH


TECH

Middleware (오픈소스 활용-17) 로컬 및 URL 호출 테스트 옵션 (curl, ab 옵션으로 부하주기)

페이지 정보

작성자 미들웨어 아이디로 검색 전체게시물 댓글 0건 조회 1,115회 좋아요 1회 작성일 23-04-05 16:54

본문

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

 

 

지난 번 (오픈소스 활용-1) Locust 성능테스트용 부하발생기 설치 및 구동 방법을 소개해드렸습니다. 

접속 링크는 아래 참고...

http://www.chlux.co.kr/bbs/board.php?bo_table=board02&wr_id=144&sca=Middleware&sfl=wr_subject&stx=%EB%B6%80%ED%95%98&sop=and 

 

이번엔 설치할 필요 없이 서버에서 간단히 부하를 넣어주고 APM모니터링으로 급히 모니터링 해야할때 활용 가능한 방법을 소개해드려 보겠습니다. 

이 방법은 ab을 활용하는 건데.. 

실제 상황에선 서버에 접속한뒤 바로 부하를 주니.. 이슈 찾을때 자주 활용 하는 방법입니다. 

기억해두셨다가 필요할때 사용하시면 큰 도움이 될 거예요. 

 

어렵지 않으니 한번 정리 해보겠습니다. 


웹서버 연동 테스트를 하다보면 curl과 ab 옵션을 자주 사용하는데, 매번 사용할때마다 정리한게 없어서 

구글링하는데 시간이 좀 걸리네요.. (좀처럼 익숙해 지지 않네요..ㅎㅎ)

 

그래서 좀 편리하게 옵션이랑 설명을 정리해봤습니다.

 

 

 

1. curl 옵션 사용 방법

curl 이란.. 리눅스에서 사용되는 명령어 입니다. 

서버와 통신할 수 있는 커맨드 명령어 툴이며, 쉽게 다른말로는 쉘상에서 http 메세지를 요청하여 응답을 받을 수 명령어 입니다. 

 

서버에 curl이 없으면 우선 설치를 진행해야 합니다. 

간단합니다.. sudo 권한이 있으면 그걸 활용해서 아래 설치 명령어만 입력해주세요


- Linux

$ sudo apt update $ sudo apt install curl


- centos 

$ sudo yum install curl


-v : 요청과 응답을 상세하게 로그로 찍는다

-o : [FILENAME] 응답 결과를 파일로 저장한다.

-X : 사용할 방식 메소드 선택하기

-d : 함께 전달할 파라미터값 설정하기

-G : 전송할 사이트 url 및 ip 주소

-H : 헤더 정보를 전달하기

-i : 사이트의 Header 정보만 가져오기

-I : 사이트의 Header와 바디 정보를 함께 가져오기

-u : 사용자 정보 

 



2. curl 테스트 방법 샘플

ex-1) localhost 호출 테스트 

curl "http://localhost/login.htm" -v -s -o /dev/null

curl "http://localhost/login.htm" -H "Host: xxx.test.com" -v -s -o /dev/null


위 주소에 localhost 말고 naver이나 테스트 해보고 싶은 사이트 주소를 적어도 됩니다. 
저는 샘플로 방법만 정의하고자 localhost를 활용했으니 참고하세요. 

 

 

 

3. ab 옵션 사용 방법 설명

- ab 이란? 

(Apache HTTP server benchmarking tool)는 커맨드 라인을 활용한 매우 가볍고 유용한 웹서버 벤치마킹 도구입니다.

Usage: ab [options] [http[s]://]hostname[:port]/path  

 

옵션 및 설명

-n 성능을 검사하기위해 보내는 요청수. 기본값으로 요청을 한번만 보내기때문에 일반적인 성능검사 결과를 얻을 수 없다.

-c 동시에 요청하는 요청수. 기본적으로 한번에 한 요청만을 보낸다.

-g 측정한 모든 값을 'gnuplot' 혹은 TSV (Tab separate values, 탭으로 구분한 값) 파일에 기록한다. 라벨은 output 파일의 첫번째 라인을 참고한다.

-t 성능을 검사하는 최대 초단위 시간.
        내부적으로 -n 50000을 가정한다. 정해진 시간동안 서버 성능을 검사할때 사용한다. 기본적으로 시간제한 없이 검사한다.

-v 출력 수준을 지정한다. 

        4 이상이면 헤더에 대한 정보를, 

        3 이상이면 (404, 202, 등) 응답코드를, 

        2 이상이면 경고(warning)와 정보(info)를 출력한다.

-A  프록시를 통해 BASIC Authentication 정보를 제공한다. 

    :로 구분한 사용자명과 암호를 base64 인코딩하여 전송한다.

-X  proxy[:port] 프록시 서버를 사용하여 요청한다. 

 

 

 

 

4. ab 테스트 방법 샘플 (localhost, google 호출)

ex-1) localhost 호출

ab -n 100 -c 2 "http://localhost/login.htm

ab -n 100 -c 2 -H "Host: xxx.test.com"  "http://localhost/login.htm"


ex-2) google 도메인에 3개의 pool을 가지고 10번 호출

ab -n 10 -c 3 http://www.google.com/index.html

위 명령어를 실행하면 3개의 프로세스(쓰레드)가 10개씩 쏴주는게 아니라 3개의 풀을 가지고 10번 요청을 진행합니다. 

 

 

 

제가 임의로 테스트 방법 샘플로 적어봤습니다. 

구글링하면 비슷하고 더 쉽게 설명된 내용도 있을 수 있으니 골고루 참고하시면 도움이 되실것 같네요.

그럼... 열공하세요~

 

 

 

댓글목록

등록된 댓글이 없습니다.

TECH 목록
번호 제목 작성자 작성일 조회수
204 Middleware 미들웨어 아이디로 검색 전체게시물 04-22 16
(오픈소스 활용-28) was에서 T4CConnection (Locked) 발생시 해결방법

카테고리 : Middleware

16 0
작성자 : 미들웨어 24/04/22
203 OS OSworker 아이디로 검색 전체게시물 04-20 29
Diagram, Architect 등 서버의 구성에 대해 그림그리실때 무엇을 사용하시나요?

카테고리 : OS

29 0
작성자 : OSworker 24/04/20
202 OS OSworker 아이디로 검색 전체게시물 04-14 58
[교육] RH174 : Managing CentOS Migrations and RHEL Upgrades

카테고리 : OS

58 0
작성자 : OSworker 24/04/14
201 Middleware 미들웨어 아이디로 검색 전체게시물 04-08 48
(오픈소스 활용-28) Java Flight Recorder 이란? Java 모니터링을 구현가능

카테고리 : Middleware

48 0
작성자 : 미들웨어 24/04/08
200 OS OSworker 아이디로 검색 전체게시물 04-03 779
[보안취약점] XZ유틸즈에서 발견된 백도어 `CVE-2024-3094`

카테고리 : OS

779 0
작성자 : OSworker 24/04/03
199 OS OSworker 아이디로 검색 전체게시물 03-30 105
레드햇 자격증 시험을 집에서~ 원하는 곳에서 볼수있는거 알고계셨나요?

카테고리 : OS

105 0
작성자 : OSworker 24/03/30
198 OS OSworker 아이디로 검색 전체게시물 03-24 175
RHEL7 to RHEL8 leapp으로 마이그레이션 하는 방법에 대해~

카테고리 : OS

175 0
작성자 : OSworker 24/03/24
197 Middleware 미들웨어 아이디로 검색 전체게시물 03-21 112
(오픈소스 활용-27) Redis Cache 란? 활용방법과 다운로드

카테고리 : Middleware

112 0
작성자 : 미들웨어 24/03/21
196 OS OSworker 아이디로 검색 전체게시물 03-17 144
Convert2RHEL를 사용하여 CentOS 7.9 에서 RHEL7.9로 전환해보겠습니다.

카테고리 : OS

144 0
작성자 : OSworker 24/03/17
195 Middleware 미들웨어 아이디로 검색 전체게시물 03-07 147
(weblogic 활용) WebLogic Kubernetes Toolkit-UI (무료) 설치 및 구성가이드

카테고리 : Middleware

147 0
작성자 : 미들웨어 24/03/07
Total 204건
게시물 검색

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