>  기사  >  백엔드 개발  >  Apache의 ab 도구 사용 예에 ​​대한 자세한 설명

Apache의 ab 도구 사용 예에 ​​대한 자세한 설명

零下一度
零下一度원래의
2017-06-30 15:59:202352검색

ab 명령 원리
Apache의 ab 명령은 다중 스레드 동시 요청을 시뮬레이션하고 서버 로드 압력을 테스트하며 nginx, lighthttp, IIS 등과 같은 다른 웹 서버의 압력도 테스트할 수 있습니다.
Apache와 함께 제공되는 ab 도구(사용된 PHP 환경은 WAMP 통합 환경, ab 도구는 D:wampbinapacheApache2.2.21bin에 있음)는 사용이 매우 쉽습니다. ab 명령은 부하를 발생시키는 컴퓨터에 대한 요구 사항이 매우 낮습니다. CPU나 메모리를 많이 차지하지는 않지만 대상 서버에 막대한 부하를 유발하므로 일부 DDOS 공격에 필요한 약입니다. 노약자 모두에게 적합합니다. 직접 사용할 때도 주의가 필요합니다. 그렇지 않으면 한 번에 너무 많은 로드가 적용되어 메모리 부족으로 인해 대상 서버가 충돌하고 강제로 다시 시작해야 하므로 손실을 볼 가치가 없습니다.

대역폭이 부족한 경우 로컬 컴퓨터에서 테스트하는 것이 가장 좋습니다. 인트라넷을 통해 테스트하려면 인트라넷의 다른 서버 또는 여러 서버를 사용하는 것이 좋습니다. 웹 서버의 원격 스트레스 테스트는 종종 만족스럽지 못한 결과를 낳습니다(과도한 네트워크 대기 시간 또는 부족한 대역폭으로 인해)

다운로드 및 설치:
;O=A
httpd-2.2.21-win32-x86-no_ssl.msi를 찾아보세요

매개변수 문서:

실행:
Windows 시스템에서 cmd 명령줄 창을 열고 Apache 설치 디렉터리
cd C:Program Files (x86)Apache Software FoundationApache2bin의 bin 디렉터리로 이동합니다.

명령을 입력하세요:
ab -n 800 -c 800 http://192.168.0.10/
(-n은 800개의 요청을 발행하고, -c는 800개의 동시성을 시뮬레이션합니다. 이는 동시에 800명이 액세스하는 것과 같습니다. 테스트 URL)

ab -t 60 -c 100 http://192.168.0.10/
60초 내에 한 번에 100개의 요청을 보냅니다.

//URL에 매개변수를 가져와야 하는 경우 다음을 수행하세요.
ab -t 60 -c 100 -T "text/plain" -p p.txt http://192.168.0.10/hello.html
p. txt 예 매개변수는 ab.exe와 동일한 디렉토리에 기록될 수 있습니다.
p.txt(예: p=wdp&fq=78

Apache의 ab 도구 사용 예에 ​​대한 자세한 설명

Apache의 ab 도구 사용 예에 ​​대한 자세한 설명-曾祥展
결과 매개변수 설명:
ApacheBench, 버전 2.3
저작권 1996 Adam Twiss, Zeus Technology Ltd,
The Apache Software Foundation에 라이선스 부여,

벤치마킹 192.168.0.10(인내심을 가지세요)
요청 100개 완료
요청 200개 완료
요청 300개 완료
요청 400개 완료
500개 요청 완료
600개 요청 완료
700개 요청 완료
800개 요청 완료
800개 요청 완료

서버 소프트웨어: Microsoft-HTTPAPI/2.0 테스트 중인 웹 서버 소프트웨어의 이름을 나타냅니다.
서버 호스트 이름: 192.168 .0.10은 다음을 나타냅니다. 요청된 URL 호스트 이름
서버 포트: 80 테스트된 웹 서버 소프트웨어의 수신 포트를 나타냅니다.

문서 경로: // 요청된 URL의 루트 절대 경로를 나타냅니다. 파일의 접미사 이름을 통해 일반적으로 이해할 수 있습니다. 요청 유형
문서 길이: 315바이트는 HTTP 응답 데이터의 본문 길이를 나타냅니다

동시성 수준: 800은 우리가 설정한 매개변수 중 하나인 동시 사용자 수를 나타냅니다.
테스트에 소요된 시간: 0.914초 이러한 요청을 모두 처리하는 데 걸리는 시간
완료 요청: 800 완료된 요청 수
실패 요청: 0 0 실패한 요청
쓰기 오류 수: 0
Non-2xx 응답: 800
총 전송량: 393600바이트 총 네트워크 전송
HTML 전송: 252000바이트 HTML 콘텐츠 전송
초당 요청 수: 875.22 [#/초] ( 평균) 처리량- 초당 요청 수
요청당 시간: 914.052[ms](평균) 서버가 요청을 받고 페이지에 응답하는 데 걸리는 시간
요청당 시간: 1.143[ms](평균, 전체 모든 동시 요청) 각 동시 요청의 평균 소비 시간
전송 속도: 420.52 [Kbytes/sec] 수신 초당 네트워크의 평균 트래픽으로, 과도한 네트워크 트래픽으로 인해 응답 시간이 연장되는 문제가 있는지 여부를 제거하는 데 도움이 될 수 있습니다.


네트워크에서 소요된 시간 분석:
연결 시간(ms) 최소 평균[+/-sd] 중앙값 최대
연결: 1 0.5 1 3
처리: 245 534 125.2 570 682
대기: 11 38 6 189.1 409 669
총계: 246 535 125.0 571 684

전체 장면에서 모든 요청의 응답 상태입니다. 시나리오에서 각 요청에는 응답 시간이 있습니다.
50%의 사용자가 571밀리초 미만의 응답 시간을 가집니다.
80%의 사용자가 652밀리초 미만의 응답 시간을 가집니다.
최대 응답 시간이 684밀리초 미만입니다.
특정 시간(ms) 내에 처리된 요청 비율 50% 571 66% 627 75% 646 80% 652 90% 666 95% 677 98% 681
99% 682
100% 684(가장 긴 요청)

이 부분 각 요청 처리 시간의 분포를 설명합니다. 예를 들어 위 테스트에서 요청 처리 시간의 80%는 6ms를 초과하지 않습니다. 이 처리 시간은 이전 요청당 시간을 나타냅니다. 단일 사용자, 각 요청의 평균 처리 시간.

위 내용은 Apache의 ab 도구 사용 예에 ​​대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.