Drupalize.Me

Drupalize.Me 튜토리얼

포위 공격은 성능 테스트 도구 키트에 추가 할 수있는 유용한 부하 테스트 도구입니다. 웹 사이트에서:

테스트 및 벤치마킹 유틸리티입니다. 그것은 웹 개발자가 인터넷에로드 일어 서서 방법을 볼 수,협박 자신의 코드를 측정 할 수 있도록 설계되었습니다. 이 웹 사이트는 쿠키를 사용하여 웹 사이트를 탐색 할 수 있습니다. 그것은 그것의 사용자가 시뮬레이션 클라이언트의 구성 번호와 서버를 칠 수 있습니다. 그 클라이언트는 포위”서버를 배치합니다.”

로드 테스트는 사이트 및 사이트 성능이 실행되는 인프라를 테스트하는 데 유용합니다. 너의 위치에 페이지를 대중적인 위치에 배치해 달라고 하고기 너의 위치가 짐의 밑에 무너질것을 본보다는 더 나쁜 아무것. 포위 공격은 귀하의 사이트에 활동을 시뮬레이션 할 수 있습니다,당신은 당신의 브라우저에서 귀하의 사이트를 사용할 수 있습니다 당신은 일반적으로 것,당신의 포위 공격이 실행되는 동안 정말 귀하의 사이트가 부하 응답하는 방법에 대한 느낌을 얻을.

이 블로그 게시물은 운영 체제 10 과 리눅스에 포위 공격을 설치하고 포위 공격으로 기본 부하 테스트를 실행하는 것을 다룰 것입니다.

가정

이 자습서에서는 명령줄을 사용하여 기본 명령을 실행하고 테스트할 수 있는 로컬 컴퓨터에 웹 사이트를 설치해야 한다고 가정합니다.공성전 설치

먼저https://www.joedog.org/siege-home/으로 가서 공성전 응용 프로그램의 최신 버전의 아카이브를 찾으십시오. 글을 쓰는 시점에서,그 포위 공격 버전 3.1.0 입니다.

저장

이제 터미널 응용 프로그램을 열고,우리는 우리의 다운로드 디렉토리에이 아카이브를 저장합니다.195>

tar -xvf siege-3.1.0.tar.gz

아카이브 디렉토리로 변경

cd siege-3.1.0

구성 및 빌드!

./configuremakemake install

문서 읽기

필요한 경우 전체 설치 지침을 참조하십시오.

설치된 버전 확인

이제 우리는 포위 공격이 제대로 설치되어 있는지 테스트 할 수 있습니다.

siege -VSIEGE 3.1.0

만세,우리는 버전 3.우리의 시스템에 설치 포위 공격의 1.0,의 몇 가지 테스트에 내려 보자!

포위 공격과 부하 테스트

나는로드 테스트에 로컬로 설치 한 드루팔 사이트를 사용하는거야. 기본 포위 공격을 시작 하려면 원하는 사이트를 사용 하 여 다음 명령을 실행 합니다.http://drupal7.local):

siege http://drupal7.local

이렇게 하면 기본 옵션인 15 명의 동시 사용자가 사이트 색인 페이지에 액세스하여 공성전을 시작할 때까지 컨트롤+를 눌러 공성전을 중지할 수 있습니다.

:

Lifting the server siege... done.Transactions: 385 hitsAvailability: 100.00 %Elapsed time: 76.02 secsData transferred: 0.84 MBResponse time: 2.40 secsTransaction rate: 5.06 trans/secThroughput: 0.01 MB/secConcurrency: 12.18Successful transactions: 385Failed transactions: 0Longest transaction: 5.73Shortest transaction: 0.31

부하 테스트 결과 해석

우선,내 결과는 그다지 인상적이지 않습니다.

용어

트랜잭션은 서버 적중 수입니다. 이 예에서는 385 개의 트랜잭션이 있습니다.

경과 시간은 전체 공성 테스트의 지속 시간입니다. 이 값은 사용자가 포위 공격을 호출한 시점부터 마지막으로 시뮬레이션된 사용자가 트랜잭션을 완료할 때까지 측정됩니다. 위에 표시된 테스트를 완료하는 데 76.02 초가 걸렸습니다.

전송된 데이터는 모든 공성 시뮬레이션 사용자에게 전송된 데이터의 합입니다. 그것은 헤더 정보뿐만 아니라 내용이 포함되어 있습니다. 이 헤더 정보를 포함하기 때문에,포위 공격에 의해보고 된 수는 서버에 의해보고 된 수보다 클 것이다. 인터넷 모드에서 이 숫자는 실행마다 다를 것으로 예상됩니다.

응답 시간은 시뮬레이션된 각 사용자의 요청에 응답하는 데 걸린 평균 시간입니다.

트랜잭션 속도는 서버가 초당 처리할 수 있었던 평균 트랜잭션 수입니다.

처리량은 서버에서 시뮬레이션된 모든 사용자에게 매초 전송되는 평균 바이트 수입니다.

동시성은 평균 동시 연결 수로,서버 성능이 저하될 때 증가하는 수입니다.

성공적인 트랜잭션은 서버가 400 보다 적은 코드를 반환한 횟수입니다. 따라서 리디렉션은 성공적인 트랜잭션으로 간주됩니다.

여러 페이지 테스트

여러 페이지를 테스트하기 위해 우리는 포위 공격 중에 테스트 할 링크 목록을 제공하기 위해 링크 파일을 사용할 수 있습니다. 텍스트 파일을 만듭니다.내 사용자의 홈 디렉토리에 내 것을 만들고 있습니다.공성전은 다음과 같은 형식을 이해합니다.:

# Comments proceeded by a hashhttp://drupal7.local/http://drupal7.local/node/2http://drupal7.local/node/7http://drupal7.local/rest/node

이제 공성전을 시작하고 생성한 파일의 경로를 제공하여 이러한 웹 사이트에 대한 테스트를 시작할 수 있습니다:

siege -f /path/to/your/urls.txt

인터넷 모드

인터넷 모드는 공성전에서 또 다른 흥미로운 옵션입니다. 이는 사용자가 사이트에서 어떤 사이트를 방문할지 예측할 수 없는 실제 상황을 모방합니다. 이 옵션의 또 다른 의미는 랜덤으로 인해 텍스트 파일의 각 페이지가 적중될 것이라는 보장이 없다는 것입니다.

인터넷 모드에서 포위 공격을 시작하려면 다음 명령을 사용하십시오.2015 년:

siege -if /path/to/your/urls.txt

동시 사용자 수 증가

동시 사용자 수 증가는 테스트하려는 동시 사용자 수를 전달하여 수행됩니다.:

siege -if /path/to/your/urls.txt -c 500
' -c NUM '' –concurrent=NUM '

동시 사용자(인수 필요):이 옵션을 사용하면 시뮬레이션 된 사용자 수만큼 웹 서버에 스트레스를 줄 수 있습니다. 이 양은 사용 가능한 컴퓨팅 리소스에 의해서만 제한되지만 현실적으로 시뮬레이션 된 200 명의 사용자는 실제 사용자 세션에서 그 수의 몇 배와 같습니다. 선택한 숫자는 서버가 처리하는 트랜잭션 수를 나타냅니다. 동시 세션 수를 나타내지 않습니다. 실제 사용자는 요청한 페이지를 실제로 읽는 데 시간이 걸립니다.

트랜잭션을 비틀 수 있는-디 플래그를 사용하는 것도 유용합니다:

siege -if /path/to/your/urls.txt -c 500 -d 3
' -d NUM '' –delay=NUM 'Each siege simulated user is delayed for a random number of seconds between one and NUM. If you are benchmarking performance, it is recommended that you use a 1 second delay ( -d1 ). The default value is three (3 ). This delay allows for the transactions to stagger rather then to allow them to pound the server in waves.

포위 공격이 제공하는 더 많은있다,나는 더 완전한 이해를 얻기 위해 전체의 문서를 읽을 것을 촉구하지만,희망이 튜토리얼은 당신의 방법에 당신을 얻을 것이다.

당신은 드루팔 사용자로 인증이 필요한 페이지를 포위 할 필요가있는 경우,이 도우미 스크립트를 체크 아웃: https://github.com/msonnabaum/DrupalSiege

공성 제거 및 정리

공성 더 이상 시스템에 공성을 설치하지 않으려면 먼저 제거한 다음 원본 디렉토리와 아카이브를 제거합니다.

:

cd ~/Downloads/siege-3.1.0/make uninstall

이제 안전하게 소스 폴더 및 아카이브를 제거 할 수 있습니다:

~/Downloads/siege-3.1.0~/Downloads/siege.-3.1.0.tar.gz

성능에 대한 많은 고뇌

사이트가 포위 공격 중에 성능이 좋지 않은 것처럼 느껴지면 이유를 알아보고 싶을 것입니다! 확인해야 할 몇 가지 사항:

  • 서버로드
  • 캐싱을 구현 했습니까?

답글 남기기

이메일 주소는 공개되지 않습니다.