(총괄) 웹 성능 압력 테스트 도구 의 ApacheBench (ab) 상세 설명
ApacheBench 명령 원리:
ab 명령 은 여러 방문 자가 동시에 URL 주 소 를 방문 하 는 것 을 모 의 하 는 동시 접근 스 레 드 를 많이 만 듭 니 다.이 테스트 목 표 는 URL 기반 이기 때문에 아파 치 의 부하 압력 을 테스트 할 수도 있 고 nginx, lighthttp, tomcat, IIS 등 다른 웹 서버 의 압력 을 테스트 할 수도 있다.
ab 명령 은 부하 가 있 는 컴퓨터 에 대한 요구 가 낮 습 니 다. 높 은 CPU 를 차지 하지 도 않 고 많은 메모 리 를 차지 하지 도 않 지만 대상 서버 에 커 다란 부하 가 될 수 있 습 니 다. 그 원 리 는 CC 공격 과 유사 합 니 다.자신의 테스트 사용 에 도 주의해 야 한다. 그렇지 않 으 면 한 번 에 너무 많은 부하 가 발생 하여 목표 서버 가 자원 소모 로 인해 심각 할 때 심지어 다운 될 수 있다.
ApacheBench 사용법 설명:
Linux 시스템 에 서 는 일반적으로 아파 치 를 설치 한 후 직접 실행 할 수 있다
# ab -n 4000 -c 1000 http://www.ha97.com/
Win 시스템 에서 cmd 명령 행 창 을 열 면 cd 는 apache 설치 디 렉 터 리 의 bin 디 렉 터 리 에 있 습 니 다.
- n 뒤의 4000 대 표 는 모두 4000 개의 요청 을 보 냅 니 다. -c 뒤의 1000 은 1000 개의 동시 다발 (1000 명 동시 방문 시 뮬 레이 션) 을 사용 하고 뒤의 사이트 주 소 는 테스트 대상 URL 을 표시 합 니 다.
잠시 후 다음 과 같은 결 과 를 얻 을 수 있 습 니 다.
결과 분석:
This is ApacheBench, Version 2.3 Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/ Licensed to The Apache Software Foundation, http://www.apache.org/
Benchmarking 192.168.80.157 (be patient) Completed 400 requests Completed 800 requests Completed 1200 requests Completed 1600 requests Completed 2000 requests Completed 2400 requests Completed 2800 requests Completed 3200 requests Completed 3600 requests Completed 4000 requests Finished 4000 requests
Server Software: Apache/2.2.15 Server Hostname: 192.168.80.157 Server Port: 80
Document Path: / phpinfo. php \ # 테스트 페이지 Document Length: 50797 bytes \ # 페이지 크기
Concurrency Level: 1000 \ # 테스트 의 병발 수 Time taken for tests: 11.846 seconds \ # 전체 테스트 지속 시간 Complete requests: 4000 \ # 완 료 된 요청 수량 Failed requests: 0 \ # 실패 한 요청 수량 Write errors: 0 Total transfered: 204586997 bytes \ # 전체 과정 에서 네트워크 전 송 량 HTML transfered: 203479961 bytes \ # 전체 과정 에서의 HTML 콘 텐 츠 전 송 량 Requests per second: 337.67 [\ # / sec] (mean) \ # 가장 중요 한 지표 중 하 나 는 LR 의 초당 사무 수 에 해당 하 며, 뒤의 괄호 에 있 는 mean 은 평균 값 Time per request: 2961.449 [ms] (mean) \ # 가장 중요 한 지표 중 하 나 는 LR 의 평균 사무 응답 시간 에 해당 한다.뒤에 괄호 안에 있 는 mean 은 평균 값 Time per request: 2.961 [ms] (mean, across all concurrent requests) \ # 연결 마다 실제 실행 시간 을 요청 하 는 평균 값 Transfer rate: 16866.07 [Kbytes / sec] received \ # 평균 초당 네트워크 데이터,네트워크 트 래 픽 이 너무 많아 응답 시간 이 길 어 지 는 문 제 를 제거 하 는 데 도움 을 줄 수 있 습 니 다. Connection Times (ms) min mean [+ / - sd] median max Connect: 0 483 1773.5 11 9052 Processing: 2 556 1459.1 255 11763 Waiting: 1 515 1459.8 220 11756 Total: 139 1039 2296.6 275 11843 \ # 네트워크 에서 소모 되 는 시간의 분해,각 데이터 의 구체 적 인 알고리즘 은 아직 명확 하지 않다.
Percentage of the requests served within a certain time (ms) 50% 275 66% 298 75% 328 80% 373 90% 3260 95% 9075 98% 9267 99% 11713 100% 11843 (longest request) \ # 전체 장면 에서 모든 요청 의 응답 상황.장면 에서 모든 요청 에 응답 시간 이 있 는데 그 중에서 50% 의 사용자 응답 시간 은 275 밀리초 보다 적 고 66% 의 사용자 응답 시간 은 298 밀리초 보다 적 으 며 최대 응답 시간 은 11843 밀리초 보다 적다.병발 요청 에 대해 cpu 는 실제 적 으로 동시에 처리 하 는 것 이 아니 라 모든 요청 에 따라 얻 은 시간 편 에 따라 하나씩 돌아 가 며 처리 하기 때문에 기본적으로 첫 번 째 Time per request 시간 은 두 번 째 Time per request 시간 에 병발 요청 수 를 곱 하 는 것 과 같다.
요약: 원 격 으로 웹 서버 에 대해 압력 테스트 를 하면 효과 가 이상 적 이지 않 습 니 다 (네트워크 지연 이 너무 커서). 내부 네트워크 의 다른 서버 나 여러 대의 서버 를 사용 하여 내부 네트워크 를 통 해 테스트 하 는 것 을 권장 합 니 다. 이렇게 얻 은 데 이 터 는 정확도 가 매우 높 습 니 다.단독 서버 만 있 으 면 원 격 테스트 보다 직접 로 컬 테스트 를 할 수 있 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
자바 파일 압축 및 압축 풀기파일 의 간단 한 압축 과 압축 해 제 를 실현 하 였 다.주요 테스트 용 에는 급 하 게 쓸 수 있 는 부분 이 있 으 니 불편 한 점 이 있 으 면 아낌없이 가르쳐 주 십시오. 1. 중국어 문 제 를 해 결 했 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.