본문 바로가기
Server&OS/Apache

ab유틸리티 파워활용 2편

by 백룡화검 2009. 5. 15.

문서제목 : ab유틸리티 파워활용 2

 

작성 : 리눅스포털(www.superuser.co.kr)수퍼유저코리아 성수

 

 

이번에는 아파치 밴치마킹툴 ab를 이용하여 특정 웹사이트의 응답속도 테스트결과내에 헤드정보 포함하도록 실행해 보겠습니다.

 

이제 리눅스 쉘프롬프트에서 "ab -n 1 -v 10 http://192.168.0.211/"를 실행하였습니다.

 

ab -n 1 -v 10 http://192.168.0.211/

 

 

 

 

ab유틸리티의 테스트 결과에 헤드정보를 포함하고자 한다면 다음 예와 같이 -v옵션을 사용합니다. 일반적인 출력결과보다 좀 더 자세한 결과를 보려고 할 때 사용하는 옵션입니다. 즉 테스트하는 사이트의 헤드정보를 함께 볼 수 있습니다.

 

, 위의 결과를 보시면 ab명령어로 192.168.0.211웹사이트의 응답속도를 측정하면서 HTML포맷의 헤드정보를 함께 출력하였습니다. 보다 자세한 응답결과를 얻기위한 방법이 될 수 있습니다.

 

 

이번에는 ab유틸리티를 이용하여 특정 웹사이트의 응답속도를 HTML포맷으로 출력하는 예를 보겠습니다. 지금까지 예로든 ab의 테스트한 결과들을 html포맷으로 출력할 수 있습니다, -w옵션을 사용하시면 출력결과를 HTML코드로 출력해 줍니다. 이 옵션을 사용하시면 웹으로 확인하는 솔루션을 만들 수 있습니다. 활용가치가 많은 옵션이라고 생각합니다. 다음 예와 같이 -w 옵션을 사용하시면 결과를 html 태그와 함께 출력해 줍니다.

 

리눅스 쉘프롬프트에서 "ab -n 1 -w http://www.yahoo.com/"을 실행해 보시기 바랍니다.

 

ab -n 1 -w http://www.yahoo.com/

 

 

, 이번 예에서는 www.yahoo.com ab실행결과를 HTML포맷으로 출력하고 있습니다. 보시는 바와 같이 이 결과를 웹으로 확인할 수 있다면 특정 웹사이트의 응답속도를 측정하는 솔루션으로 활용할 수도 있습니다. 다음 예를 보시기 바랍니다.

 

이번에는 앞에서 보았던 ab유틸리티의 HTML포맷으로 된 결과를 화면으로 출력하는 대신 이를 특정 파일로 출력하는 예를 보도록 하겠습니다.

 

, 바로 앞의 결과를 특정 HTML파일에 저장하여 웹브라우즈를 통하여 결과를 확인해보는 예를 보도록 하겠습니다. 주의하실 것은 결과파일의 저장위치가 웹으로 볼 수 있는 경로에 위치해야한다는 것입니다. 그래야만 웹으로 확인할 수 있기 때문입니다. 필자가 이 명령을 실행한 위치는 /usr/local/apache/htdocs입니다. 따라서 아래의 예에서 www.yahoo.com을 테스트한 결과파일은 yahoo_test.html이며 이 파일은 /usr/local/apache/htdocs/yahoo_test.html로 저장이 될 것입니다.

 

리눅스 쉘프롬프트에서 다음과 같이 실행해 보았습니다.

 

ab -n 1 -w http://www.yahoo.com/ > yahoo_test.html

 

 

이제 이 결과 파일을 웹을 통하여 확인해 보도록 하겠습니다. 다음 결과를 보시기 바랍니다. 방금 실행했던 ab유틸리티의 결과를 yahoo_test.html파일에 저장하고 이 파일을 웹브라우즈로 불러본 화면입니다.

 

 
이번 예에서 우리가 알 수 있는 것은 ab유틸리티를 이용하여 임의의 웹사이트의 응답속도를 측정하는 솔루션을 웹버전으로 구현할 수 있다는 것입니다.

 

지금까지 ab유틸리티의 다양한 실 사용법들을 살펴보았습니다. 지금까지 보았던 ab의 사용법외에도 ab유틸리티에는 다음과 같은 다양한 방법으로 실행을 하기 위한 옵션들이 존재합니다.

 

-p POST file 옵션

-A Authentication username:password 옵션

-p Proxy-Authentication username:password 옵션

-C Cookie name=value 옵션

-p Header string 옵션

-T content-type 옵션

 

-p POST file 옵션

POST할 파일을 지정하여 밴치마킹을 합니다.

 

-A Authentication username:password 옵션

아파치에서 사용하는 사용자암호인증인 htpasswd를 사용할 경우에 ID와 패스워드를 지정하여 테스트를 합니다. ID와 패스워드는 콜론(:)으로 분리하여 입력하시면 됩니다.

 

-p Proxy-Authentication username:password 옵션

Proxy를 사용할 경우의 사용자 암호인증인 htpasswd를 사용할 경우에 사용하는 옵션입니다. ID와 패스워드는 콜론(:)으로 분리하여 입력하시면 됩니다

 

-C Cookie name=value 옵션

Cookie와 함께 밴치마킹을 가능하게 하는 옵션입니다. name=value를 한쌍으로 하여 입력하셔야 합니다.

 

-p Header string 옵션

추가되는 Header와 함께 밴치마킹을 할 수 있는 옵션입니다. 예를 들어 Accept-Encoding: zip/zop:8bit와 같이 입력합니다.

 

-T content-type 옵션

POST하는 데이터에 Content-type Header를 사용할 수 있는 옵션입니다.

 

이상과 같이 ab유틸리티의 다양한 사용법을 알아보았습니다. 강좌의 앞부분에서 말씀드린바와 같이 ab 사용법을 정확하게 익히는 것도 중요하지만 ab 결과로 확인할 있는 여러가지 정보들을 정확하게 파악할 있는 것이 무엇보다 중요하다고 하겠습니다.

 

더욱이 마지막 부분에서 확인하셨듯이 ab 결과를 HTML파일등으로 저장하여 웹서버의 응답속도를 측정하는 간단한 솔루션을 개발하는 용도로도 활용될 있습니다. 이를 위해서는 ab 측정결과를 데이터베이스에 저장하여 저장된 데이터를 활용하는 방법으로 확장해 보시는 것도 보다 좋은 솔루션 개발을 위한 방법이 있습니다.

 

제공 : 리눅스포털(www.superuser.co.kr)수퍼유저코리아